當前位置:首頁 » 操作系統 » mybatis多個資料庫

mybatis多個資料庫

發布時間: 2022-08-05 00:05:52

『壹』 spring+mybatis怎麼配置一個數據源,多個資料庫

spring+mybatis怎麼配置一個數據源,多個資料庫
pring配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:jdbc="http://www.springframework.org/schema/jdbc"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd

『貳』 spring+mybatis多數據源配置問題,誰能幫我分析一下問題出在哪兒

你看個範例吧:

<context:component-scan base-package="com.byd.mes.dev,com.byd.mes.bussiness.service" />

<!--===================================================================================
指定Spring配置中用到的屬性文件
====================================================================================-->
<bean id="propertyConfigurer"
class="com.byd.mes.util.PropertyConfigurer">
<property name="locations" >
<list>
<!--
<value>classpath:com/byd/mes/conf/jdbc@b_wip3.properties</value>
<value>classpath:com/byd/mes/conf/jdbc@b_wip.properties</value>
<value>classpath:com/byd/mes/conf/jdbc@bmes_wip.properties</value>
-->

<value>classpath:com/byd/mes/conf/jdbc@bmes_dev.properties</value>
<value>classpath:com/byd/mes/conf/system_conf.properties</value>

</list>
</property>
</bean>
<!--===================================================================================
數據源
====================================================================================-->
<!-- 業務資料庫 -->
<bean id="dataSourceORG" class="org.apache.commons.dbcp.BasicDataSource" destroy-method ="close"
p:driverClassName="${mes.org.jdbc.driver}"
p:url="${mes.org.jdbc.connectionURL}"
p:username="${mes.org.jdbc.username}"
p:password="${mes.org.jdbc.password}"
/>
<!-- 歸檔資料庫 -->
<bean id="dataSourceODS" class="org.apache.commons.dbcp.BasicDataSource" destroy-method ="close"
p:driverClassName="${mes.ods.jdbc.driver}"
p:url="${mes.ods.jdbc.connectionURL}"
p:username="${mes.ods.jdbc.username}"
p:password="${mes.ods.jdbc.password}"
/>
<!-- 動態數據源 -->
<bean id="dataSource" class="com.byd.mes.util.datasource.DynamicDataSource">
<property name="targetDataSources">
<map>
<entry key="orgdb" value-ref="dataSourceORG"/>
<entry key="odsdb" value-ref="dataSourceODS"/>
</map>
</property>
<property name="defaultTargetDataSource" ref="dataSourceORG" />
</bean><!--===================================================================================
ibatis配置
====================================================================================-->
<bean id="lobHandler" class="org.springframework.jdbc.support.lob.DefaultLobHandler"/>

<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="configLocation">
<value>classpath:com/byd/mes/conf/sqlMapConfig_mes.xml</value>
</property>
<property name="lobHandler" ref="lobHandler"/>
</bean>
<!--===================================================================================
定義事務管理器(聲明式的事務)
====================================================================================-->

<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource">
<ref local="dataSource" />
</property>
</bean>
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="add*" propagation="REQUIRED" timeout="60"
read-only="false" rollback-for="Throwable" />
<tx:method name="send*" propagation="REQUIRED" timeout="60"
read-only="false" rollback-for="Throwable" />
<tx:method name="save*" propagation="REQUIRED" timeout="60"
read-only="false" rollback-for="Throwable" />
<tx:method name="delete*" propagation="REQUIRED" timeout="60"
read-only="false" rollback-for="Throwable" />
<tx:method name="update*" propagation="REQUIRED" timeout="60"
read-only="false" rollback-for="Throwable" />
<tx:method name="imp*" propagation="REQUIRED" timeout="180"
read-only="false" rollback-for="Throwable" />
<tx:method name="execute*" propagation="REQUIRED" timeout="60"
read-only="false" rollback-for="Throwable" />
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="interceptorPointCuts"
expression="(execution(* com.byd.mes..*ServiceImpl.*(..)))" />

<aop:advisor
advice-ref="txAdvice" pointcut-ref="interceptorPointCuts" />

</aop:config>
<!--===================================================================================
OTHER SPRING XML
====================================================================================-->
<!-- 許可權 -->
<import resource="applicationContext-permission.xml" />
<!-- 動態任務 -->
<import resource="applicationContext-quartz.xml" />


<!--===================================================================================
ACTION XML
====================================================================================-->
<!-- 主數據 action -->
<import resource="action_mes_main.xml"/>
<!-- 許可權action -->
<import resource="action_mes_system.xml"/>
<!-- 現場操作管理 -->
<import resource="action_mes_siteoperation.xml"/>
<!-- 倉庫管理 -->
<import resource="action_mes_wm.xml"/>
<!-- 包裝出貨管理 -->
<import resource="action_mes_packing.xml"/>
<!-- 生成管理-->
<import resource="action_mes_proction.xml"/>
<!-- 系統緩存配置-->
<import resource="cache_conf.xml"/>
<!-- 開發-->
<import resource="action_mes_dev.xml"/>

<!--===================================================================================
DAO XML
=====================================================================================-->
<!-- 主數據 -->
<import resource="_mes_main.xml" />
<!-- 許可權DAO -->
<import resource="_mes_system.xml" />
<!-- POD模塊DAO -->
<import resource="_mes_siteoperation.xml" />
<!-- 倉庫模塊DAO -->
<import resource="_mes_wm.xml" />
<!-- 生產管理DAO -->
<import resource="_mes_proction.xml" />
<!-- 包裝 -->
<import resource="_mes_packing.xml" />
<!-- _pagedesign.xml -->
<import resource="_pagedesign.xml" />
<!--===================================================================================
SERVICE XML
=====================================================================================-->
<!-- 主數據 service-->
<import resource="service_mes_main.xml" />
<!-- 許可權SERVICE -->
<import resource="service_mes_system.xml" />
<!-- POD模塊SERVICE -->
<import resource="service_mes_siteoperation.xml" />
<!-- 倉庫模塊SERVICE -->
<import resource="service_mes_wm.xml" />
<!-- 生產管理SERVICE -->
<import resource="service_mes_proction.xml" />
<!-- 包裝 service-->
<import resource="service_mes_packing.xml" />
<!--===================================================================================
OTHER XML
=====================================================================================-->
<!-- Applicationcontext應用Bean -->
<bean id="beanFactory" class="com.byd.mes.util.BeanFactory"
p:propertyConfigurer-ref ="propertyConfigurer"/>

<!--===================================================================================
系統標准功能點 XML解析服務類
=====================================================================================-->
<bean id="standardActivityXMLParseClass" class="java.util.HashMap">
<constructor-arg>
<map>
<entry key="START" value="com.byd.mes.dev.parseXml.StartActivityUtil,START" />
<entry key="COMPLETE" value="com.byd.mes.dev.parseXml.CompleteActivityUtil,COMPLETE" />
<entry key="NCLOG" value="com.byd.mes.dev.parseXml.NcLogCompleteActivityUtil,NCLOG" />
<entry key="SFCDATACOLLECTION" value="com.byd.mes.dev.parseXml.DataCollectionActivityUtil,SFCDATACOLLECTION" />
<entry key="SERIALIZE" value="com.byd.mes.dev.parseXml.SerializeActivityUtil,SERIALIZE" />
<entry key="PASS" value="com.byd.mes.dev.parseXml.PassActivityUtil,PASS" />
</map>
</constructor-arg>
</bean>
</beans>

『叄』 spring+mybatis 多資料庫事務管理:一個方法裡面能同時對兩個資料庫的數據進行操作

  1. 定義兩個DAO分別使用不同的數據源,ADAO連接A資料庫,BDAO連接B資料庫

  2. 定義一個Service類,加上Spring註解@Transactional,表示進行事務管理。

    將ADAO和BDAO注入到Service類裡面。

    在service類裡面創建一個方法,方法里調用ADAO的方法插入數據到A資料庫的user表,然後調用BDAO的方法插入數據到B資料庫的user表

『肆』 mybatis連2個資料庫 怎麼判斷使用

在DAO的實現類層你可以看到你implements的方法的名稱,這個名稱就是你配置數據源名稱的地方,通過數據源名稱查詢你的WEB-INF/項目名稱/config/**Context.xml文件里配置的數據源信息。再通過WebLogic控制台找到你配置信息的具體數據源及各種信息。

『伍』 在Mybatis中連接查詢兩個資料庫的兩張表的欄位怎麼搞

跟你之前只有一個資料庫寫SQL一樣的。只不過表明前面帶上資料庫的schema名稱就好了,跟寫單庫的表查詢一樣一樣的。

select*fromuser.`user`u
leftjointrade.`trade_order`t
on
u.`id`=t.`user_id`

為了給你講解清楚,特地親手創建了兩個資料庫,以及兩張表。希望對你有幫助,還望採納最佳噢!謝謝 ^_^

『陸』 spring+mybatis 多資料庫事務管理:一個方法裡面能同時對兩個數據源的數據進行操作,這兩個資料庫中的表

1.定義兩個DAO分別使用不同的數據源,ADAO連接A資料庫,BDAO連接B資料庫
2.定義一個Service類,加上Spring註解@Transactional,表示進行事務管理。事務要配置成jta分布式事務。

將ADAO和BDAO注入到Service類裡面。
在service類裡面創建一個方法,方法里調用ADAO的方法插入數據到A資料庫的user表,然後調用BDAO的方法插入數據到B資料庫的user表

『柒』 mybatis怎麼實現兩種資料庫的兼容

在系統運行過程中,針對不同資料庫類型區分載入不同文件路徑下的sqlmap配置。

留給開發人員做的事依舊是快樂地編寫原始資料庫語句,而不再為多資料庫兼容問題撓頭。

『捌』 mybatis怎麼配置兩個資料庫

這是我之前寫的一個在xml文件中配置oracle數據源的部分代碼,由於我是用了分散配置,所以vaule=的值是在另外一個文件中,lz可以直接將相關信息硬編碼進去

熱點內容
idea文件夾顯示 發布:2024-05-07 00:30:04 瀏覽:249
怎麼把ps存儲為ai 發布:2024-05-07 00:30:03 瀏覽:272
參數內存緩存 發布:2024-05-07 00:28:54 瀏覽:746
android狀態欄高度 發布:2024-05-07 00:24:42 瀏覽:241
資料庫主文件 發布:2024-05-07 00:14:41 瀏覽:608
木頭創意解壓 發布:2024-05-07 00:11:55 瀏覽:215
密碼都能設置什麼 發布:2024-05-07 00:02:30 瀏覽:741
蘭州大學網路伺服器ip地址 發布:2024-05-06 23:44:09 瀏覽:429
安卓手機為什麼這么香 發布:2024-05-06 23:33:19 瀏覽:623
安卓微信深色模式是什麼意思 發布:2024-05-06 23:14:41 瀏覽:686