1 导入mybatis相关的jar包
mybatis-3.5.5.jarasm-7.1.jarcglib-3.3.0.jarcommons-logging-1.2.jarjavassist-3.27.0-GA.jarlog4j-1.2.17.jarlog4j-api-2.13.3.jarlog4j-core-2.13.3.jarognl-3.2.14.jarslf4j-api-1.7.30.jarslf4j-log4j12-1.7.30.jar 2 导入mybatis整合spring相关的jar包(重要)mybatis-spring-2.0.4.jar 3 spring相关的jar包spring-beans-5.2.7.RELEASE.jarspring-context-5.2.7.RELEASE.jarspring-core-5.2.7.RELEASE.jarspring-expression-5.2.7.RELEASE.jarspring-jdbc-5.2.7.RELEASE.jarspring-tx-5.2.7.RELEASE.jarspring-aop-5.2.7.RELEASE.jar 4 数据库驱动jar包mysql-connector-java-5.1.48.jar注意:这里需要添加context命名空间,用来解析下面的properties文件
添加 db.properties 文件
jdbc.driver=com.mysql jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/数据库名字 jdbc.username=连接数据库用户名 jdbc.password=连接数据库密码配置数据源-----mysql
<!--配置数据源--> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> <property name="url" value="${jdbc.url}"/> <property name="driverClassName" value="${jdbc.driver}"/> </bean>配置 SqlSessionFactoryBean
<!--配置 SqlSessionFactoryBean--> <bean id="sqlSessionFactoryBean" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="typeAliasesPackage" value="com.bjsxt.pojo"/> <property name="mapperLocations" value="com/bjsxt/mapper/*.xml"/> </bean>SqlSessionFactoryBean 是初始化 Mybatis 框架的 Bean 对象。它是生产 SqlSessionFactory 的一种工厂 Bean。在 Spring 整合 Mybatis 中,我们可以不需要 Mybatis 的配置文件,在该 Bean 对象中可以完成对 Mybatis 框架的配置。 配置 SqlSessionTemplate
<!--配置 SqlSessionTemplate--> <bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate"> <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactoryBean"/> </bean>接口实现类
public class UsersServiceImpl implements UsersService { private SqlSessionTemplate sqlSessionTemplate; public SqlSessionTemplate getSqlSessionTemplate() { return sqlSessionTemplate; } public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) { this.sqlSessionTemplate = sqlSessionTemplate; } }配置业务层
<!--配置业务层--> <bean id="usersService" class="com.bjsxt.service.impl.UsersServiceImpl"> <property name="sqlSessionTemplate" ref="sqlSessionTemplate"/> </bean>到这里。我们就可以在业务层使用SqlSessionTemplate对象去获取mapper对象。然后进行相应的业务操作。这个写法比较麻烦,后面我会以注解的方式来整合。
// UsersMapper是一个和xml映射的接口 UsersMapper usersMapper =this.sqlSessionTemplate.getMapper(UsersMapper.class); usersMapper.insertSelective(users);