- 浏览: 1053176 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1441)
- 软件思想&演讲 (9)
- 行业常识 (250)
- 时时疑问 (5)
- java/guava/python/php/ruby/R/scala/groovy (213)
- struct/spring/springmvc (37)
- mybatis/hibernate/JPA (10)
- mysql/oracle/sqlserver/db2/mongdb/redis/neo4j/GreenPlum/Teradata/hsqldb/Derby/sakila (268)
- js/jquery/jqueryUi/jqueryEaseyUI/extjs/angulrJs/react/es6/grunt/zepto/raphael (81)
- ZMQ/RabbitMQ/ActiveMQ/JMS/kafka (17)
- lucene/solr/nuth/elasticsearch/MG4J (167)
- html/css/ionic/nodejs/bootstrap (19)
- Linux/shell/centos (56)
- cvs/svn/git/sourceTree/gradle/ant/maven/mantis/docker/Kubernetes (26)
- sonatype nexus (1)
- tomcat/jetty/netty/jboss (9)
- 工具 (17)
- ETL/SPASS/MATLAB/RapidMiner/weka/kettle/DataX/Kylin (11)
- hadoop/spark/Hbase/Hive/pig/Zookeeper/HAWQ/cloudera/Impala/Oozie (190)
- ios/swift/android (9)
- 机器学习&算法&大数据 (18)
- Mesos是Apache下的开源分布式资源管理框架 (1)
- echarts/d3/highCharts/tableau (1)
- 行业技能图谱 (1)
- 大数据可视化 (2)
- tornado/ansible/twisted (2)
- Nagios/Cacti/Zabbix (0)
- eclipse/intellijIDEA/webstorm (5)
- cvs/svn/git/sourceTree/gradle/jira/bitbucket (4)
- jsp/jsf/flex/ZKoss (0)
- 测试技术 (2)
- splunk/flunm (2)
- 高并发/大数据量 (1)
- freemarker/vector/thymeleaf (1)
- docker/Kubernetes (2)
- dubbo/ESB/dubboX/wso2 (2)
最新评论
通过Spring的配置,添加多个数据源,制作多个qlMapClient,iBatis或Hibernate的各个DAO,
按其所需使用不同的qlMapClient,即可连接到多个DB。
用途吗,同时使用Oracle、SQLServer、DB2、MySql,这样的可能似乎不大。
但是对于要从其他系统读取数据的接口,是有可能的。
还有就是,将OLTP和OLAP的表分别放置在不同DB中(2台服务器)
Xml代码 复制代码 收藏代码
1.<!-- 定义两个数据源dataSource1和dataSource2 -->
2.<bean id="dataSource1" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
3. <property name="driverClassName">
4. <value>com.ibm.db2.jcc.DB2Driver</value>
5. </property>
6. <property name="url">
7. <value>jdbc:db2://172.168.1.1:50001/MYDB1</value>
8. </property>
9. <property name="username">
10. <value>user</value>
11. </property>
12. <property name="password">
13. <value>password</value>
14. </property>
15.</bean>
16.
17.<bean id="dataSource2" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
18. <property name="driverClassName">
19. <value>com.ibm.db2.jcc.DB2Driver</value>
20. </property>
21. <property name="url">
22. <value>jdbc:db2://172.168.1.1:50001/MYDB2</value>
23. </property>
24. <property name="username">
25. <value>user</value>
26. </property>
27. <property name="password">
28. <value>password</value>
29. </property>
30.</bean>
31.
32.<!-- 定义数据源1和数据源2的sqlMapClient,使用同一个SqlMapConfig.xml -->
33.<bean id="sqlMapClient1" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
34. <property name="configLocation">
35. <value>SqlMapConfig.xml</value>
36. </property>
37. <property name="dataSource">
38. <ref bean="dataSource1" />
39. </property>
40.</bean>
41.
42.<bean id="sqlMapClient2" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
43. <property name="configLocation">
44. <value>SqlMapConfig.xml</value>
45. </property>
46. <property name="dataSource">
47. <ref bean="dataSource2" />
48. </property>
49.</bean>
50.
51.<!-- dao1和dao2分别对应位于不同数据源的结构相同的同名表, 因此使用同一个DAOImpl(自然也就是同一个SqlMap) -->
52.<bean id="dao1" class="x.y.XxxxDAOImpl">
53. <property name="sqlMapClient">
54. <ref bean="sqlMapClient1" />
55. </property>
56.</bean>
57.
58.<bean id="dao2" class="x.y.XxxxDAOImpl">
59. <property name="sqlMapClient">
60. <ref bean="sqlMapClient2" />
61. </property>
62.</bean>
按其所需使用不同的qlMapClient,即可连接到多个DB。
用途吗,同时使用Oracle、SQLServer、DB2、MySql,这样的可能似乎不大。
但是对于要从其他系统读取数据的接口,是有可能的。
还有就是,将OLTP和OLAP的表分别放置在不同DB中(2台服务器)
Xml代码 复制代码 收藏代码
1.<!-- 定义两个数据源dataSource1和dataSource2 -->
2.<bean id="dataSource1" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
3. <property name="driverClassName">
4. <value>com.ibm.db2.jcc.DB2Driver</value>
5. </property>
6. <property name="url">
7. <value>jdbc:db2://172.168.1.1:50001/MYDB1</value>
8. </property>
9. <property name="username">
10. <value>user</value>
11. </property>
12. <property name="password">
13. <value>password</value>
14. </property>
15.</bean>
16.
17.<bean id="dataSource2" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
18. <property name="driverClassName">
19. <value>com.ibm.db2.jcc.DB2Driver</value>
20. </property>
21. <property name="url">
22. <value>jdbc:db2://172.168.1.1:50001/MYDB2</value>
23. </property>
24. <property name="username">
25. <value>user</value>
26. </property>
27. <property name="password">
28. <value>password</value>
29. </property>
30.</bean>
31.
32.<!-- 定义数据源1和数据源2的sqlMapClient,使用同一个SqlMapConfig.xml -->
33.<bean id="sqlMapClient1" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
34. <property name="configLocation">
35. <value>SqlMapConfig.xml</value>
36. </property>
37. <property name="dataSource">
38. <ref bean="dataSource1" />
39. </property>
40.</bean>
41.
42.<bean id="sqlMapClient2" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
43. <property name="configLocation">
44. <value>SqlMapConfig.xml</value>
45. </property>
46. <property name="dataSource">
47. <ref bean="dataSource2" />
48. </property>
49.</bean>
50.
51.<!-- dao1和dao2分别对应位于不同数据源的结构相同的同名表, 因此使用同一个DAOImpl(自然也就是同一个SqlMap) -->
52.<bean id="dao1" class="x.y.XxxxDAOImpl">
53. <property name="sqlMapClient">
54. <ref bean="sqlMapClient1" />
55. </property>
56.</bean>
57.
58.<bean id="dao2" class="x.y.XxxxDAOImpl">
59. <property name="sqlMapClient">
60. <ref bean="sqlMapClient2" />
61. </property>
62.</bean>
发表评论
-
Spring Boot
2017-09-26 09:51 289Spring Boot是由Pivotal团 ... -
spring AOP中切点
2017-08-25 09:59 904在spring AOP中,需要使用AspectJ的切点表达式 ... -
Spring JdbcTemplate详解
2017-07-19 16:12 591JdbcTemplate简介 Spring对数据库的操 ... -
Spring相关
2017-04-20 16:10 457我是一个Java开发者,之前知道Spring属于这个公司,就 ... -
spring.schemas、spring.handlers的使用
2017-02-28 13:55 1722报错信息:Configuration problem: Un ... -
Spring的一个命名空间的名称空间处理程序没有找到
2017-02-25 15:20 9451. 问题 本文将讨论Spring中最常见的配置问题 —— ... -
到底EJB是什么
2016-12-06 10:05 450到底EJB是什么?被口口相传的神神秘秘的,百度一番,总觉得 ... -
Spring MVC 和 Servlet 一样,都不是线程安全的
2016-04-28 01:06 679你的理解是对的,Spring MVC 和 Servlet 一 ... -
springmvc的control 的线程是否安全的问题
2016-05-31 10:09 362关于java Servlet,Struts,springM ... -
框架的一些学习
2016-02-03 14:53 262java aopalliance-1.0.jar这个包是AOP ... -
Metrics介绍和Spring的集成
2016-02-02 16:56 973Metrics可以为你的代码的运行提供无与伦 ... -
spring mvc常用的注解
2016-01-22 14:28 704spring mvc常用的注解: ... -
Spring的常用注解
2016-01-20 16:07 656Spring2.5引入注解式处理器 @Controlle ... -
springmvc避免IE执行AJAX时,返回JSON出现下载文件
2017-01-01 23:35 864<!-- 避免IE执行AJAX时,返回JSON出现下载文 ... -
springMVC的@ResponseBody出现乱码解决方法
2017-01-02 00:23 380使用@ResponseBody出现乱码解决方法 1、 Re ... -
Spring中的Bean的注入方式
2017-01-02 00:27 538一 setter方法注入 配置文件如下: <bean ... -
spring发送邮件配置文件
2017-01-02 00:27 12751、发送邮件配置文件springmail_config ... -
@Resource和@Autowire的区别
2017-01-02 00:27 701@Resource和@Autowire的区别 在java代码中 ... -
Spring中继承并简化了Quartz
2017-01-02 00:27 671Quartz是一个强大的企业级任务调度框架,Spring中继承 ... -
spring方法拦截器 MethodInterceptor
2017-01-03 09:38 1706使用到spring方法拦截器 MethodIntercepto ...
相关推荐
2. 配置Spring:定义DataSource、SessionFactory(对于Hibernate)和SqlSessionFactory(对于Ibatis)的bean,配置数据源、事务管理器等。 3. 配置Hibernate:创建Hibernate的实体类,编写对应的映射文件,设置...
- 集成Hibernate或Ibatis,配置数据源、SessionFactory(或SqlSessionFactory)以及实体映射。 - 编写DAO接口和实现,利用Hibernate的Session或Ibatis的SqlSession执行数据库操作。 - 在Action中注入Service,由...
2. **配置Hibernate**:创建Hibernate的配置文件(hibernate.cfg.xml),定义数据源、实体类和映射文件,通过SessionFactory来生成会话工厂,处理对象的持久化。 3. **配置iBatis**:配置iBatis的SqlMapConfig.xml...
传统的做法是在Spring和Hibernate框架中配置单一的数据源,这种方式对于单个数据源的场景是可行的,但在需要处理多个数据源的情况下则显得力不从心。 #### 解决方案 为了解决上述问题,本文将介绍一种利用Spring...
在这个配置中,`DynamicDataSource`作为所有数据源的父类,`sqlMapClient`指向`DynamicDataSource`,这样所有使用`sqlMapClient`的DAO类,如`UserInfoDAO`,都将通过动态数据源进行数据操作,而无需直接处理数据源...
标题中的"springmvc_hibernate_ibatis_jdbc"指的是一个整合了SpringMVC、Hibernate、iBatis和JDBC这四种关键技术的Java应用框架。这个框架旨在提供一个全面且强大的解决方案,便于开发人员进行Web应用程序的构建。 ...
5. **四大框架整合**:阐述如何将Webwork2、Spring、Ibatis和Hibernate协同工作,形成一个完整的MVC架构,包括数据源配置、事务管理策略和应用部署。 6. **案例分析**:通过实际的项目案例,演示如何使用这些框架...
- `src/main/resources`:存放配置文件,如Spring的bean配置、iBatis的数据源和SqlSessionFactory配置。 - `src/main/webapp`:Web应用目录,包括Web-INF下的dispatcher-servlet.xml(Spring MVC配置)、web.xml...
1. **配置Spring**:首先,你需要创建一个Spring配置文件,如`applicationContext.xml`,在这个文件中,你会定义Bean,包括Hibernate的SessionFactory、数据源、事务管理器等。同时,还需要配置iBatis的相关Bean,...
2. **配置Spring**:接下来,需要在Spring的配置文件中定义iBATIS的SqlMapClient或SqlSessionFactory Bean,并配置数据源、事务管理器等相关属性。 3. **定义映射文件**:iBATIS的核心在于定义SQL映射文件,这些...
5. **iBATIS配置**:设置SqlMapConfig.xml文件,配置数据源、SQL映射文件路径等。 6. **WebWork配置**:配置web.xml,设置过滤器和监听器,指定WebWork的配置文件路径。 7. **动作类和控制器**:编写WebWork的动作类...
Spring还包含了一个强大的数据访问集成层,支持多种持久化技术,包括JDBC、Hibernate和iBatis。 **iBatis框架**: iBatis是一个简单但功能强大的SQL映射框架,它将SQL语句与Java代码分离,使得数据库操作更加灵活和...
例如,Spring可以创建Hibernate的SessionFactory bean,然后由iBatis使用,或者直接在iBatis的SqlSessionFactory配置中引用Spring管理的数据源。 **具体配置步骤**: 1. **配置Struts**:定义struts-config.xml文件...
这个"SSI"整合的Jar包,为开发者提供了一个快速搭建基于Struts2、Spring和Ibatis的开发环境,节省了手动下载和配置各个框架的时间,便于项目初始化和快速启动。开发者只需关注业务逻辑的实现,无需过多关注底层框架...
这个整合通常被称为SSH(Spring、Struts2、Hibernate或iBatis)框架栈,是Java开发中的常见选择。 **Spring框架** Spring是一个全面的后端开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。在本...
1. 配置Spring容器:在Spring配置文件中,定义两个数据源,一个对应Hibernate,另一个对应iBatis。同时,配置事务管理器,分别处理两种框架的事务。 2. 定义DAO接口:为每个需要访问数据库的业务操作创建DAO接口,...
2. **Spring配置**:在applicationContext.xml文件中定义Bean,包括业务逻辑组件、DAO接口及其实现、数据源等。通过 `<context:component-scan>` 标签扫描并管理Spring的Bean。 3. **iBatis配置**:创建...
2. **配置主配置文件**:创建一个名为`sqlMapConfig.xml`的主配置文件,定义数据源、事务管理器和SqlSessionFactory。 ```xml <!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS....
- 接着,配置Ibatis的SqlMapConfig.xml,定义数据源和SQL映射文件。 - 在业务逻辑中,使用Spring的DAO接口,通过Ibatis执行SQL并获取数据。 - 最后,结果数据通过Struts的Model传递到视图层,通常是JSP页面,展示给...
4. 集成iBatis:配置SqlMapConfig.xml文件,定义数据源、事务管理器以及SQL映射文件的位置。在Spring配置文件中,配置SqlSessionFactoryBean,并将其与Service层的Bean关联。 5. 编写Action、Service和DAO:Action...