您的位置:首页 > 编程语言 > Java开发

Spring和MyBatis整合

2016-03-17 21:04 363 查看
上一篇介绍了使用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映射语句文件等(具体的实现方法可以去 参考:/article/9894599.html)。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配置已经讲解完毕。这只是我个人操作的心得,俗话说技术以实用为主,因此在这里只介绍了使用方法,至于内部的实现原理大家可以在网上学习,在一起分享一下,希望大家多多指教!谢谢大家!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: