Spring和MyBatis整合

来源:互联网 发布:剑三捏脸数据 成女 编辑:程序博客网 时间:2024/05/16 14:49

上一篇介绍了使用Spring JdbcTemplate操作数据库,接下来跟大家一起分享一下Spring+MyBatis实现数据库操作。

众所周知,MyBatis因其简单易于学习等优点而深受广大程序猿的喜欢(当然我也是其中一个)~_~,前端时间刚做过一个MyBatis+Struts+Spring的项目,在这里跟大家分享一下自己的一些操作心得,希望能帮助大家。废话不多说,接下来为大家献上MyBatis在Spring中的部署。

1、当然是导入必要的Jar包了(commons-io-XXX.jar、mybatis-XXX.jar、mybatis-spring-XXXXX.jar)。

2、使用mybatis-generator-core-XXX-bundle.zip生成MyBatis所必须的java访问接口类以及SQL映射语句文件等(具体的实现方法可以去  参考:http://blog.csdn.net/yin_jw/article/details/24689127)。

3、将生成的文件移植到自己的项目底下(当然生成的文件需要根据自己要实现的功能来做修改,特别是生成的xml映射文件)。

4、在MyBatis配置文件(MyBatis-Configuration.xml)中添加SQL映射文件信息如下:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><mappers><mapper resource="cn/wang/mybatis/dao/mapper/xml映射文件1" /><mapper resource="cn/wang/mybatis/dao/mapper/<span style="font-family: Arial, Helvetica, sans-serif;">xml映射文件2"</span><span style="font-family: Arial, Helvetica, sans-serif;"> /></span></mappers></configuration>
5、在Spring配置文件中配置数据源、事务、MyBatis的SqlSessionFactoryBean、SessionTemplate和Dao。如下:
<span style="white-space:pre"><!-- 定义dbcp数据源   数据库连接池  --><span style="white-space:pre"></span><bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" ><span style="white-space:pre"></span><!-- 指定JDBC驱动类 --><span style="white-space:pre"></span><property name="driverClassName" value="${jdbc.driver}"><span style="white-space:pre"></span></property><span style="white-space:pre"></span><!-- 提供连接数据库的URL地址 --><span style="white-space:pre"></span><property name="url" value="${jdbc.url}"><span style="white-space:pre"></span></property><span style="white-space:pre"></span><!-- 提供连接数据库的用户名和密码 --><span style="white-space:pre"></span><property name="username" value="${jdbc.username}"></property><span style="white-space:pre"></span><property name="password" value="${jdbc.password}"></property><span style="white-space:pre"></span></bean></span>
<span style="white-space:pre"></span><!-- 配置mybitasSqlSessionFactoryBean --><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><property name="dataSource" ref="dataSource" /><property name="configLocation" value="classpath:MyBatis-Configuration.xml"></property></bean><!-- 配置SqlSessionTemplate并注入SqlSessionFactory --><bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">    <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory" /></bean>
定义事务管理器大家可以参考:<a target=_blank href="http://www.cnblogs.com/xusir/p/3650522.html">http://www.cnblogs.com/xusir/p/3650522.html</a>在这里谢谢博主了!!

6、在Dao层的实现类中实现增删改查操作

//Spring会根据id自动注入private SqlSessionTemplate sqlSessionTemplate;/***省略get/set方法*/public void findAllEmp() {MEmployeeMapper empM = sqlSessionTemplate.getMapper(MEmployeeMapper.class);MEmployee mEmp = empM.selectByPrimaryKey("004");<span style="white-space:pre"></span>
<span style="white-space:pre"></span>//查询操作(<span style="font-family: Arial, Helvetica, sans-serif;">selectByPrimaryKey方法是mybatis-generator-core-XXX-bundle.zip工具生成的java访问接口类在这里可以直接使用映射接口来实现数据库操作</span><span style="font-family: Arial, Helvetica, sans-serif;">)</span>int num = empM.deleteByPrimaryKey("004");<span style="white-space:pre"></span>//删除操作System.out.println(mEmp.getName() + "\t" + num);}
至此MyBatis+Spring配置已经讲解完毕。这只是我个人操作的心得,俗话说技术以实用为主,因此在这里只介绍了使用方法,至于内部的实现原理大家可以在网上学习,在一起分享一下,希望大家多多指教!谢谢大家!
0 0
原创粉丝点击