Mybatis整合

01_MyBatis和Spring整合之传统dao方式

A.整合思路

SqlSessionFactory对象应该放到spring容器中作为单例存在。 传统dao的开发方式中,应该从spring容器中获得sqlsession对象。 Mapper代理形式中,应该从spring容器中直接获得mapper的代理对象。 数据库的连接以及数据库连接池事务管理都交给spring容器来完成。

B.导入jar包
C.传统dao方式

a.自定义接口IUserDao b.自定义类实现IUserDao接口,继承SqlSessionDaoSupport类
public class IUserDaoImpl extends SqlSessionDaoSupport implements IUserDao { @Override public List selectUserList() { SqlSession sqlSession = getSqlSession(); List userList = sqlSession.selectList(“selectUserList”); return userList; } }
注意:此处的SqlSession不能close c.配置IUserDaoImpl实例到Spring容器,配置参数sqlSessionFactory d.配置SqlSessionFactoryBean实例到Spring容器,配置参数dataSource,configLocation e.配置dataSource实例到Spring容器,配置参数driverClass,jdbcUrl,user,password f.在SqlMapConfig.xml中加载IUserDao.xml


02_MyBatis和Spring整合之mapper映射方式

A.步骤

自定义接口IUserDao 定义IUserDao.xml 将IUserDao接口和IUserDao.xml放到IUserDao接口的包下 将MapperFactoryBean注入到spring容器,设置参数mapperInterface,sqlSessionFactory, 会将映射文件加载到spring中 将sqlSessinFactory注入到spring容器.设置参数configLocation,dataSource 将dataSource注入到spring容器,设置参数driverClass,jdbcUrl,user,password

B.代码实现


<!‐‐‐‐>

C.存在的问题

如果使用上面这种方式进行整合,如果有很多个dao接口的话,那么就很麻烦,那么这个时 候就采用包扫描的方式,一次性扫描多个dao接口
<!‐‐ ‐‐>

注意:

MapperScannerConfigurer可以不用配置sqlSessionFactory,它会自动去Spring扫 描,如果有找到sqlSessionFactory,会自动注入。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值