16.mybatis和spring整合-SqlSessionFactory配置
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
|--新建log4j.properties配置文件
log4j.rootCategory=DEBUG, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
yout=org.apache.log4j.PatternLayout
yout.ConversionPattern=[%5p] [%t] %c{2}:%L - %m%n
1、SqlSessionFactory配置:
在applicationContext.xml配置SqlSessionFactory和数据源。
mybatis和spring整合
整合思路:
需要spring通过单例的方式管理SqlSessionFactory。
spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSession。(Spring和mybatis整合自动完成)
持久层的mapper、dao都需要由spring进行管理。
ername=root
jdbc.password=753951
dbcp.maxIdle=10
dbcp.maxTotal=20
jdbc.defaultAutoCommit=true
-->
<!-- 加载数据源properties配置文件 -->
<context:property-placeholder location="classpath:db.properties" />
<!-- Connection Pooling Info -->
<property name="maxIdle" value="${dbcp.maxIdle}" />
<property name="maxTotal" value="${dbcp.maxTotal}" />
<property name="timeBetweenEvictionRunsMillis" value="3600000" />
">
<!--
新建db.properties文件配置占位属性
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true
/schema/tx/spring-tx-3.0.xsd
/schema/aop
/schema/aop/spring-aop-3.0.xsd
<property name="url" value="${jdbc.url}" />
<property name="username" value="${ername}" />
<property name="password" value="${jdbc.password}" />
<property name="configLocation" value="mybatis/Configuration.xml" />
<!-- 数据源
ref:数据源bean的id
-->
<property name="dataSource" ref="dataSource" />
}
|--新建db.properties配置文件
新建新建Source Folder目录properties
|--新建db.properties配置文件(与src目录的db.properties内容一致,这里我也不知道为什么少一个都不行,否则运行报错)//-----------------------------------
src目录
|--新建ssm.bean、包(ssm:spring springMVC mybatis)
public class User {
private int id;
private String name;
private int age;
setter/getter
/schema/beans
/schema/beans/spring-beans-3.0.xsddbcp数据库连接池 -->
<bean id="dataSource" class="mons.dbcp2.BasicDataSource"
destroy-method="close" lazy-init="false">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="minEvictableIdleTimeMillis" value="3600000" />
<property name="defaultAutoCommit" value="${jdbc.defaultAutoCommit}" />
</bean>
<!-- SqlSessionFactory
工程名下新建Source Folder目录config,
|--在config新建包mybatis,在mybatis新建mybatis的配置文件Configuration.xml。
|--在config新建包spring,在spring新建spring的配置文件applicationContext.xml。
</bean>
</beans>
整合的环境:
创建一个新java工程(基本上接近实际开发的工程结构)。
新建工程的名称为spring_mybatis
jar 包
mybatis3.2.7.jar
spring3.2.0.jar
mybatis-spring1.2.2.jar mybatis和spring的整合包(早期由spring官方提供,现在由mybatis官方提供)
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="/schema/beans" xmlns:xsi="/2001/XMLSchema-instance" xmlns:tx="/schema/tx" xmlns:aop="/schema/aop" xsi:schemaLocation="
SqlSessionFactory在mybatis和spring的整合包下。
-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!-- 加载mybatis配置文件
value:mybatis的配置文件 -->
log4j.rootCategory=DEBUG, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
yout=org.apache.log4j.PatternLayout
yout.ConversionPattern=[%5p] [%t] %c{2}:%L - %m%n
1、SqlSessionFactory配置:
在applicationContext.xml配置SqlSessionFactory和数据源。
mybatis和spring整合
整合思路:
需要spring通过单例的方式管理SqlSessionFactory。
spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSession。(Spring和mybatis整合自动完成)
持久层的mapper、dao都需要由spring进行管理。
ername=root
jdbc.password=753951
dbcp.maxIdle=10
dbcp.maxTotal=20
jdbc.defaultAutoCommit=true
-->
<!-- 加载数据源properties配置文件 -->
<context:property-placeholder location="classpath:db.properties" />
<!-- Connection Pooling Info -->
<property name="maxIdle" value="${dbcp.maxIdle}" />
<property name="maxTotal" value="${dbcp.maxTotal}" />
<property name="timeBetweenEvictionRunsMillis" value="3600000" />
">
<!--
新建db.properties文件配置占位属性
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true
/schema/tx/spring-tx-3.0.xsd
/schema/aop
/schema/aop/spring-aop-3.0.xsd
<property name="url" value="${jdbc.url}" />
<property name="username" value="${ername}" />
<property name="password" value="${jdbc.password}" />
<property name="configLocation" value="mybatis/Configuration.xml" />
<!-- 数据源
ref:数据源bean的id
-->
<property name="dataSource" ref="dataSource" />
}
|--新建db.properties配置文件
新建新建Source Folder目录properties
|--新建db.properties配置文件(与src目录的db.properties内容一致,这里我也不知道为什么少一个都不行,否则运行报错)//-----------------------------------
src目录
|--新建ssm.bean、包(ssm:spring springMVC mybatis)
public class User {
private int id;
private String name;
private int age;
setter/getter
/schema/beans
/schema/beans/spring-beans-3.0.xsddbcp数据库连接池 -->
<bean id="dataSource" class="mons.dbcp2.BasicDataSource"
destroy-method="close" lazy-init="false">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="minEvictableIdleTimeMillis" value="3600000" />
<property name="defaultAutoCommit" value="${jdbc.defaultAutoCommit}" />
</bean>
<!-- SqlSessionFactory
工程名下新建Source Folder目录config,
|--在config新建包mybatis,在mybatis新建mybatis的配置文件Configuration.xml。
|--在config新建包spring,在spring新建spring的配置文件applicationContext.xml。
</bean>
</beans>
整合的环境:
创建一个新java工程(基本上接近实际开发的工程结构)。
新建工程的名称为spring_mybatis
jar 包
mybatis3.2.7.jar
spring3.2.0.jar
mybatis-spring1.2.2.jar mybatis和spring的整合包(早期由spring官方提供,现在由mybatis官方提供)
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="/schema/beans" xmlns:xsi="/2001/XMLSchema-instance" xmlns:tx="/schema/tx" xmlns:aop="/schema/aop" xsi:schemaLocation="
SqlSessionFactory在mybatis和spring的整合包下。
-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!-- 加载mybatis配置文件
value:mybatis的配置文件 -->