首页 后端开发 php教程 Spring双数据库配置_PHP教程

Spring双数据库配置_PHP教程

Jul 20, 2016 am 10:58 AM
spring 为了 使用 多个 实现 我们 数据库 配置

有时候我们可能在一个项目中使用两个数据库,为了实现使用两个或多个数据库的功能,我们需要在Spring中配置相关信息。

首先是添加配置文件conf.properties

<ol class="dp-c">
<li class="alt"><span><span><bean><span class="string">"propertyConfigurer"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"</span><span>&gt;  </span></bean></span></span></li>
<li><span>        <property><span class="string">"locations"</span><span>&gt;  </span></property></span></li>
<li class="alt"><span>            <list>  </list></span></li>
<li><span>                <value>classpath:config.properties</value>  </span></li>
<li class="alt"><span>              </span></li>
<li><span>          </span></li>
<li class="alt"><span> </span></li>
</ol>
登录后复制

其次是添加数据源(${...}对应的是conf.properties中的配置信息)

<ol class="dp-c">
<li class="alt"><span><span><!--对应数据A的数据源-->  </span></span></li>
<li><span><bean><span class="string">"dataSource_A"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"org.apache.commons.dbcp.BasicDataSource"</span><span>&gt;  </span></bean></span></li>
<li class="alt"><span>        <property><span class="string">"driverClassName"</span><span> value=</span><span class="string">"${A.driver_class}"</span><span> /&gt;  </span></property></span></li>
<li><span>        <property><span class="string">"url"</span><span> value=</span><span class="string">"${A.url}"</span><span> /&gt;  </span></property></span></li>
<li class="alt"><span>        <property><span class="string">"username"</span><span> value=</span><span class="string">"${A.username}"</span><span> /&gt;  </span></property></span></li>
<li><span>        <property><span class="string">"password"</span><span> value=</span><span class="string">"${A.password}"</span><span> /&gt;  </span></property></span></li>
<li class="alt"><span>  </span></li>
<li><span><!--对应数据库B的数据源-->  </span></li>
<li class="alt"><span><bean><span class="string">"dataSource_B"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"org.apache.commons.dbcp.BasicDataSource"</span><span>&gt;  </span></bean></span></li>
<li><span>        <property><span class="string">"driverClassName"</span><span> value=</span><span class="string">"${B.driver_class}"</span><span> /&gt;  </span></property></span></li>
<li class="alt"><span>        <property><span class="string">"url"</span><span> value=</span><span class="string">"${B.url}"</span><span> /&gt;  </span></property></span></li>
<li><span>        <property><span class="string">"username"</span><span> value=</span><span class="string">"${B.username}"</span><span> /&gt;  </span></property></span></li>
<li class="alt"><span>        <property><span class="string">"password"</span><span> value=</span><span class="string">"${B.password}"</span><span> /&gt;  </span></property></span></li>
<li><span> </span></li>
</ol>
登录后复制

之后是添加对应的sessionFactory:

<ol class="dp-c">
<li class="alt"><span><span><!-- A的sessionFactory -->  </span></span></li>
<li><span>    <bean><span class="string">"sessionFactory_A"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"moretv.commons.spring.hibernate3.AnnotationSessionFactoryBean"</span><span>&gt;  </span></bean></span></li>
<li class="alt"><span>        <property><span class="string">"dataSource"</span><span> ref=</span><span class="string">"dataSource_A"</span><span>/&gt;  </span></property></span></li>
<li><span>      </span></li>
<li class="alt"><span><!-- B的sessionFactory -->  </span></li>
<li><span>    <bean><span class="string">"sessionFactory_B"</span><span> </span><span class="keyword">class</span><span>=</span><span class="string">"moretv.commons.spring.hibernate3.AnnotationSessionFactoryBean"</span><span>&gt;  </span></bean></span></li>
<li class="alt"><span>        <property><span class="string">"dataSource"</span><span> ref=</span><span class="string">"dataSource_B"</span><span>/&gt;      </span></property></span></li>
<li><span>     </span></li>
</ol>
登录后复制

在项目中的dao层有时会出现这样的配置信息:

<ol class="dp-c">
<li class="alt"><span><span><bean><span class="string">"XDao"</span><span> </span><span class="keyword">class</span><span> = </span><span class="string">"xxx.xxx.xDaoImpl"</span><span>&gt;  </span></bean></span></span></li>
<li><span><property><span class="string">"sessionFactory"</span><span> ref=</span><span class="string">"sessionFactory"</span><span>&gt;</span></property>  </span></li>
<li class="alt"><span> </span></li>
</ol>
登录后复制

为了实现使用两个不同的数据库,可以改成

<ol class="dp-c">
<li class="alt"><span><span><span><span class="string">"font-family:'sans serif', tahoma, verdana, helvetica;font-size:13px;line-height:19px;white-space:normal;background-color:#ffffff;"</span><span>&gt; </span><span><span class="string">"font-family:'sans serif', tahoma, verdana, helvetica;white-space:normal;background-color:#ffffff;"</span><span>&gt;<!--使用A数据库的DAO--></span> <bean><span class="string">"XDao"</span><span> </span><span class="keyword">class</span><span> = </span><span class="string">"xxx.xxx.xDaoImpl"</span><span>&gt;  </span></bean></span></span></span></span></li>
<li><span><property><span class="string">"sessionFactory"</span><span> ref=</span><span class="string">"sessionFactory_A"</span><span>&gt;</span></property>  </span></li>
<li class="alt"><span>  </span></li>
<li><span><!--使用B数据库的DAO-->  </span></li>
<li class="alt"><span><bean><span class="string">"XDao"</span><span> </span><span class="keyword">class</span><span> = </span><span class="string">"xxx.xxx.xDaoImpl"</span><span>&gt;  </span></bean></span></li>
<li><span><property><span class="string">"sessionFactory"</span><span> ref=</span><span class="string">"sessionFactory_B"</span><span>&gt;</span></property>  </span></li>
<li class="alt"><span> </span></li>
</ol>
登录后复制

这样就能实现双数据库了。。。。


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/445650.htmlTechArticle有时候我们可能在一个项目中使用两个数据库,为了实现使用两个或多个数据库的功能,我们需要在Spring中配置相关信息。 首先是添加配置...
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

利用Spring Boot以及Spring AI构建生成式人工智能应用 利用Spring Boot以及Spring AI构建生成式人工智能应用 Apr 28, 2024 am 11:46 AM

利用Spring Boot以及Spring AI构建生成式人工智能应用

BTCC教学:如何在BTCC交易所绑定使用MetaMask钱包? BTCC教学:如何在BTCC交易所绑定使用MetaMask钱包? Apr 26, 2024 am 09:40 AM

BTCC教学:如何在BTCC交易所绑定使用MetaMask钱包?

小米汽车app怎么用 小米汽车app怎么用 Apr 01, 2024 pm 09:19 PM

小米汽车app怎么用

在PHP中使用MySQLi建立数据库连接的详尽教程 在PHP中使用MySQLi建立数据库连接的详尽教程 Jun 04, 2024 pm 01:42 PM

在PHP中使用MySQLi建立数据库连接的详尽教程

JUnit单元测试框架在Spring项目中的应用 JUnit单元测试框架在Spring项目中的应用 Apr 18, 2024 pm 04:54 PM

JUnit单元测试框架在Spring项目中的应用

Hibernate 如何实现多态映射? Hibernate 如何实现多态映射? Apr 17, 2024 pm 12:09 PM

Hibernate 如何实现多态映射?

iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片 iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片 Jul 18, 2024 am 05:48 AM

iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片

什么是Bitget Launchpool?如何使用Bitget Launchpool? 什么是Bitget Launchpool?如何使用Bitget Launchpool? Jun 07, 2024 pm 12:06 PM

什么是Bitget Launchpool?如何使用Bitget Launchpool?

See all articles