现在做的项目刚开始我用的是Struts2+Spring+Hibernate3.1主要框架,简单的DAO层(数据的增删改查分页等)数据源也有Spring控制管理,事务控制在Service层(具体业务方法),之前就是本地一个Sql Server 2005 数据库,现在数据要多地分开(eg:北京、上海、厦门),比如公司总部在北京,分公司在上海和厦门,三个公司的业务侧重点都不同,而且每天分公司还必须把数据资料汇到总公司(数据资料定时转移),那我就三个地方各有一个数据库,那数据库名可以不一样吗?具体业务表结果和数目可以不一样吗?Web服务器是Tomcat5.5,那我是三个地方共用一个Tomcat(就一个应用程序)还是要三地都有一个同样的Tomcat(那样的话我不还得有同样的代码都拿走了,这个不行),还有就是Spring的配置文件applicationContext.xml又得怎么配了,跟以前的应当不一样了,那些事务管理又该怎么办?比如在一个方法里先访问北京数据库,接着又要访问上海的数据库,事务怎么控制的?这些是我一个人来做,没其他人帮指导,在网上也搜了一些,但是都没有理想的回复,还希望各位能人智士帮忙出出点子及具体策略,非常感谢。
hibernate对多数据库支持不好的哦.
你只要定义多个数据源了哦spring也只能定义多个Context了哦
2.如果每个分公司都有不同的应用系统,就是三个不同的系统要数据交互,那最后是做接口来解决,这样比较安全
3.如果是要配置多个数据源让spring来管理也是可以的
不清楚楼主到底是什么情况,到底要做什么...
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${jdbc.driverClass}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.user}" />
<property name="password" value="${jdbc.password}" />
</bean>
<bean id="dataSource2"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${server.jdbc.driverClass}" />
<property name="url" value="${server.jdbc.url}" />
<property name="username" value="${server.jdbc.user}" />
<property name="password" value="${server.jdbc.password}" />
</bean>
<bean id="XXXX1DAO" class="com.XXXX.XXXX.db.XXXXDAO">
<property name="dataSource">
<ref local="dataSource1" />
</property>
<property name="sqlMapClient">
<ref local="sqlMapClient" />
</property>
</bean>
<bean id="XXXX2DAO" class="com.XXXX.XXXX.db.XXXX2DAO">
<property name="dataSource">
<ref local="dataSource2" />
</property>
<property name="sqlMapClient">
<ref local="sqlMapClient" />
</property>
</bean>配置两个dataSource.