因spring3发布时mybatis还没有出正式版本,所以spring没有整合最新的mybatis.不过社区倒是开发了一个中间件。
需要的jar包
mybatis-3.0.6.jar
mybatis-spring-1.0.2.jar
要点:
1.在spring中配置mybatis工厂类
2.在dao层使用spring注入的的工具bean对数据进行操作
整合时,可以有四种方式来使用mybatis进行数据处理。
spring
中必须的配置。
spring的配置文件中加入以下内容
<!-- MyBatis配置 -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="c3p0DataSource" />
<property name="configLocation" value="/WEB-INF/config/db/MyBatisConfiguration.xml" />
<property name="mapperLocations" value="/WEB-INF/config/db/*Mapper.xml" />
<property name="typeAliasesPackage" value="${mybatis.alias.basepackage}" />
</bean>
1.SqlSessionFactoryBean (必需)
就是中间件所需的处理类
2.dataSource (必需)
spring中数据源引用
3.configLocation (可选)
Mybatis自身的配置文件,一般用来声明别名
4.mapperLocation (可选)
mybatis的映射文件
5.typeAliasesPackage (可选)
要映射类的包路径,如果使用了这种方式,则configLocation中不必再进行声明
使用mybatis进行数据处理的四种方式(SqlSessionTemplate/SqlSessionDaoSupport/MapperFactoryBean/MapperScannerConfigurer)
不同方式的特点
- SqlSessionTemplate 这个需要写配置文件,在实现类中注入sqlsession,再使用sqlsession,是细颗粒控制
- SqlSessionDaoSupport 这个只需要在实现类中继承特殊类就可以使用sqlsession
- MapperFactoryBean 这个要写配置文件,把对应的所有接口在配置文件中引用即可,无需写实现类
- MapperScannerConfigurer 这个要写配置文件,只要给出接口所在的包即可,会自动把包中的接口引入,无需写实现类
-
配置文件加入新配
<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="sqlSessionFactory" />
<constructor-arg index="1" value="BATCH" /><!--- 如果想要进行批量操作可加入这个属性 ->
</bean>
- 注入sqlsession()
@Reasource //使用spring3的注解注入
private SqlSession sqlSession;
- 使用sqlsession来进行操作
public User getUser(String userId) {
return (User) sqlSession.selectOne("org.mybatis.spring.sample.mapper.UserMapper.getUser", userId);
}
-
SqlSessionDaoSupport(sqlSessionFactory会被spring自动装配,不需要手动注入)
- 继承SqlSessionDaoSupport类
public class UserDaoImpl extends SqlSessionDaoSupport implements UserDao {
}
- 使用getSqlSession()方法取sqlSession来进行数据处理
public User getUser(String userId) {
return (User) getSqlSession().selectOne("org.mybatis.spring.sample.mapper.UserMapper.getUser", userId);
}
- 写配置文件,引入每个DAO接口
<bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="org.mybatis.spring.sample.mapper.UserMapper" />
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
- 在业务层可直接注入dao的接口进行操作
- 写配置文件,配置包名将自动引入包中的所有接口
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="org.mybatis.spring.sample.mapper" />
</bean>
- 在业务层可直接注入DAO接口操作,注入时使用的是接口名,其首字母小写
- 注意:如果有别的实现类,其提供的名称如果是接口名,且首字母小写,则会在启动时出现冲突错误
分享到:
相关推荐
MyBatis3.06与Spring3.1整合例子,配置了事务,spring采用annotation的形式
springMVC3.0 + MyBatis3.1 花了2天整合成功的DEMO Spring 用的是基于注解的 MyBatis 用的是基于XML的 带表结构 有增删改查的小例子(含事务) 个人认为这套小框架有有兴趣的人 完全可以自己修改修改, 作为自己以后...
《Spring3.1 和 MyBatis 整合笔记 》源代码 第二版. 修改了一些小地方,使之更好那么一点点.
该项目是整合了是struts2.2.6+Mybatis3.2.0+Spring3.1,前台页面使用了ligur UI,很适合新手看看。
Struts2_Spring3.1_MyBatis3.06整合需要用到的jar包.rar
Spring3.1与MyBatis3.06整合需要的jar包
Struts2+Spring3.1+MyBatis3.06+EasyUI整合,自己根据文档整合的,由于jar包太大,单独抽取出来,传到csdn了
《Spring3.1 和 MyBatis 整合笔记 》源代码
基于struts2.2+spring3.1+Mybatis3.1(SSI框架)框架开发下的JAR包整合!
Spring整合Mybatis所需jar包, spring 3.2.0 mybatis 3.1
struts2+spring3.1+mybatis3.0框架整合
一个完整的s2sm整合项目,含jar包。使用注释型事务管理。给大家参考了。
ssm3-mybatis2-memcached 使用了 simple-...ssm3-springcache-mybatis3-memcached 通过 Spring Cache(Spring 3.1+) 实现 simple-spring-memcached 和 MyBatis3 整合。 simple-spring-memcached 使用了 JSON 序列化。
1.1 为什么整合MyBatis 和Spring 1.2 要求 1.3 感谢 第二章 入门 2.1 介绍 2.2 安装 2.3 创建SqlSessionFactory 第三章 注入映射器 3.1 注入映射器 第四章 使用SqlSessionDaoTemplate 和...
struts2.2.3+spring3.0.3+hibernate3.6.7整合jar包 +配置文件+整合Struts2.2与Hibernate3.6需要的Spring3.1相关JAR文件.doc+SSM config.xml.doc+mybatis-spring-1.0.0-reference-simplified-chinese.pdf
spring3.1-mybatis3.1.1-struts2.3.4.1目前(2012-09-29 15:08:00)最新的所有整合jar包,直接拷贝之项目的WEB-INF 下面直接搞定 自己整理的
此项目介绍了以SSM(struts2+Spring3+Mybatis3)项架整合,页面采用VM(velocity)+DWZ(简单实用国产jQuery UI框架)集合
spring boot项目整合mybatis,通过mybatis生成器插件进行扩展,自动生成mybatis配置环境及实体文件 example模块是使用样例参考,extend模块是扩展源码,可直接复制到项目中以模块安装方式使用,也可打成jar包约会...
7.1 mybatis与spring整合jar 68 7.2 Mybatis配置文件 68 7.3 Spring配置文件: 69 7.4 Mapper编写的三种方法 70 7.4.1 Dao接口实现类继承SqlSessionDaoSupport 70 7.4.2 使用org.mybatis.spring.mapper....
技术选型:Spring 4.0,Shiro 1.2,Spring MVC 4.0,Spring Task 4.0,MyBatis 3.1,Druid 1.0,Ehcache 2.6,Bootstrap 3.0。为了进行快速开发,目前集成了部分平台功能:系统用户,包含用户登录,用户的增删改查...