dao层开发mybatis和动态代理


传统dao执行select语句



实体类


dao接口


dao执行insert语句


dao接口的实现类


测试



动态代理条件分析

List<Student> studentList  = dao.selectStudent();调用

1.dao对象,类型是StudentDao,全限定名称是:com.song.dao.StudentDao
全限定名称和sql映射文件中namespace是一样的。

2.方法名称,selectStudent,这个方法就是sql映射文件中的id值selectStudent

3.通过dao中方法的返回值也也可以确定mybatis要调用的是SqlSession 的方法。
如果返回值是List,调用的是SqlSession.selectList()方法
如果返回值是int,或者非List的,看mapper文件中的标签,标签是<insert>,<update>就会调用sqlSession的insert,update等方法




mybatis的动态代理:

mybatis根据dao的方法调用,获取执行sql语句的信息
mybatis根据你的dao接口,创建出一个dao接口的实现类,并创建这个类的对象
完成SqlSession调用方法,访问数据库。

动态代理的实现。(不需要接口实现类)
SqlSession.getMapper();
使用mybatis的动态代理机制,使用SqlSession.getMapper(dao接口)
getMapper能获取dao接口对于的实现类对象



动态代理使用例子

#涂鸦智能实习##咪咕视讯#
全部评论
学到了感谢楼主分享啊
1 回复 分享
发布于 2022-08-25 20:27 陕西

相关推荐

不愿透露姓名的神秘牛友
07-10 14:10
啊啊啊啊好幸福,妈妈是我找工作发疯前的一束光
榕城小榕树:你是我见过最幸福的牛客男孩
点赞 评论 收藏
分享
码农索隆:单休一个月少休息4天,一年就是48天,平时节假日,别人3天假期,单休的两天
点赞 评论 收藏
分享
06-26 15:33
青岛工学院 Java
积极的秋田犬要冲国企:他现在邀请我明天面试
点赞 评论 收藏
分享
风中翠竹:真的真的真的没有kpi。。。面试官是没有任何kpi的,捞是真的想试试看这个行不行,碰碰运气,或者是面试官比较闲现在,没事捞个人看看。kpi算HR那边,但是只有你入职了,kpi才作数,面试是没有的。
双非有机会进大厂吗
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-11 11:24
大家还是用ai改吧,我心疼得要死,就当花钱买教训吧,人家直接拿完钱就跑路了
程序员小白条:简历修改700....神奇,又不是帮你面试,咋的,简历修改从双非变92了还是没实习变成有大厂实习了
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务