使用mybatis开发Dao的两种方法

Dao开发方法
使用Mybatis开发Dao,通常有两个方法,即原始Dao开发方法和Mapper接口开发方法。
下面用一个小案例进行演示:
1. 需求:
1.1:根据用户id查询一个用户信息
1.2:根据用户名称模糊查询用户信息列表
1.3:添加用户信息
一:原始Dao开发方法
配置文件:

接口类:在这里插入图片描述
实现类:在这里插入图片描述

测试类:在这里插入图片描述
原始Dao开发中存在以下问题:
1:Dao方法体存在重复代码:通过SqlSessionFactory创建SqlSession,调用SqlSession的数据库操作方法
2:调用sqlSession的数据库操作方法需要指定statement的id,这里存在硬编码,不得于开发维护。
二:Mapper动态代理方式
配置文件:在这里插入图片描述
接口类:在这里插入图片描述
测试类:在这里插入图片描述

总结:
1:selectOne和selectList
动态代理对象调用sqlSession.selectOne()和sqlSession.selectList()是根据mapper接口方法的返回值决 定,如果返回list则调用selectList方法,如果返回单个对象则调用selectOne方法。

2:namespace
mybatis官方推荐使用mapper代理方法开发mapper接口,程序员不用编写mapper接口实现类,使用mapper代理方法时,输入参数可以使用pojo包装对象或mapper对象,保证dao的通用性。
说明:由于本人学艺不精,如有不足之处还请各位大佬指正。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值