Spring Mvc和Mybatis的多数据库访问配置过程

Spring Mvc 加Mybatis的多数据库访问源配置访问过程如下:

在applicationContext.xml进行配置<?xml version="1.0" encoding="UTF-8"?><beans xmlns=""xmlns:aop=""xmlns:context=""xmlns:mvc=""xmlns:tx=""xmlns:xsi=""xsi:schemaLocation=" http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"default-autowire="byType"><aop:aspectj-autoproxy /><context:annotation-config /><context:component-scan base-package="com.dbOne.*.*" /><!–<context:component-scan base-package="com.rrt.*.view, com.rrt.*.service, com.rrt.frame.aspect" />–><!– ============================== 数据库一配置 ==================================== –><bean id="dbOneDataSource" name="dbOneDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"><property name="driverClassName"><value>oracle.jdbc.driver.OracleDriver</value></property><property name="url"><value>jdbc:oracle:thin:@192.168.31.20:1521:orcl</value></property><property name="username"><value>dbOneUserName</value></property><property name="password"><value>dbOnePassword</value></property></bean><bean id="rrtSqlSessionFactory" name="rrtSqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="rrtDataSource" /><property name="configLocation" value="classpath:setup/mybatis-config-dbOne.xml" /></bean><bean id="rrtMapperScannerConfigurer" name="rrtMapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="sqlSessionFactory" ref="rrtSqlSessionFactory" /><property name="basePackage" value="com.rrt.*.dao" /></bean><bean id="rrtTransactionManager" name="rrtTransactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="rrtDataSource" /></bean><tx:annotation-driven transaction-manager="rrtTransactionManager" /><!– ============================== 数据库二配置 ==================================== –><bean id="centerDataSource" name="centerDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"><property name="driverClassName"><value>oracle.jdbc.driver.OracleDriver</value></property><property name="url"><value>jdbc:oracle:thin:@192.168.31.21:1521:orcl</value></property><property name="username"><value>dbTwoUserName</value></property><property name="password"><value>dbTwoPassword</value></property></bean><bean id="centerSqlSessionFactory" name="centerSqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="centerDataSource" /><property name="configLocation" value="classpath:setup/mybatis-config-Two.xml" /></bean><bean id="centerMapperScannerConfigurer" name="centerMapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="sqlSessionFactory" ref="centerSqlSessionFactory" /><property name="basePackage" value="com.center.*.dao" /></bean><bean id="centerTransactionManager" name="centerTransactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="centerDataSource"></property></bean><tx:annotation-driven transaction-manager="centerTransactionManager" /><!– 验证码配置 –><bean id="captchaProducer" class="com.google.code.kaptcha.impl.DefaultKaptcha"><property name="config"><bean class="com.google.code.kaptcha.util.Config"><constructor-arg type="java.util.Properties"><value>kaptcha.border=nokaptcha.textproducer.char.space=3kaptcha.textproducer.char.string=235689kaptcha.noise.color=yellowkaptcha.image.width=80kaptcha.image.height=25kaptcha.textproducer.font.size=15kaptcha.noise.impl=com.google.code.kaptcha.impl.NoNoisekaptcha.textproducer.font.names=Courier, Arialkaptcha.obscurificator.impl=com.google.code.kaptcha.impl.ShadowGimpy</value></constructor-arg></bean></property></bean><!– memcached缓存客户端配置 –><bean id="memcachedPool" class="com.danga.MemCached.SockIOPool"factory-method="getInstance" init-method="initialize"><constructor-arg><value>neeaMemcachedPool</value></constructor-arg><property name="servers"><list><value>192.168.31.20:11211</value></list></property><property name="initConn"><value>20</value></property><property name="minConn"><value>10</value></property><property name="maxConn"><value>50</value></property><property name="nagle"><value>false</value></property><property name="socketTO"><value>3000</value></property></bean><bean id="memcachedClient" class="com.danga.MemCached.MemCachedClient"><constructor-arg><value>neeaMemcachedPool</value></constructor-arg></bean></beans>mybatis-config-One.xml配置内容<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN"""><configuration><settings><setting name="cacheEnabled" value="true"/><setting name="lazyLoadingEnabled" value="true"/><setting name="multipleResultSetsEnabled" value="true"/><setting name="useColumnLabel" value="true"/><setting name="useGeneratedKeys" value="true"/><setting name="defaultExecutorType" value="SIMPLE"/><setting name="defaultStatementTimeout" value="25000"/><setting name="autoMappingBehavior" value="PARTIAL"/><setting name="mapUnderscoreToCamelCase" value="true"/></settings><typeAliases> <typeAlias type="com.rrtong.login.entity.Login" alias="Login" /></typeAliases> <mappers><mapper resource="./sqlmap/User.xml" /></mappers></configuration>其中User.xml的内容为<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ""><mapper namespace="com.rrtong.login.dao.LoginDao"><select id="getLoginInfo" parameterType="String" resultType="Login">selectuserName,userPwdFrom personwhere code = #{userCode}</select></mapper>

特别说明:两个数据源配置的<property name="basePackage" value="com.rrt.*.dao" />必须不一样,特别是在使用通配符时 ,需要注意不能范围重叠。

谦受益,满招损。

Spring Mvc和Mybatis的多数据库访问配置过程

相关文章:

你感兴趣的文章:

标签云: