mybatis04--Mapper动态代理实现
生活随笔
收集整理的這篇文章主要介紹了
mybatis04--Mapper动态代理实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
通過之前的操作,我們發現dao的實現類其實并沒有做什么實質性的工作,僅僅是通過sqlSession的相關API定位到StudentMapper映射文件
中的ID中的sql語句,其實真正操作DB的是mapper中的sql
所以mybatis就拋開了dao層的實現類,可以直接定位到mapper中的sql!然后執行sql對DB進行操作!這種對dao的實現方式我們稱為Mapper的動態代理方式!
?
1.刪除之前的StudentDaoImpl實現類
2.修改StudentMapper文件中的namespace必須是StudentDao的完整限定名
?
3.修改StudentMapper文件中所有的id必須和StudentDao接口中的方法名稱完全一致
?
4.修改測試類代碼
?
public class StudentTest {StudentDao dao;SqlSession session;@Beforepublic void before() {// 因為需要關閉session 需要把session提取出去session = SessionUtil.getSession();dao = session.getMapper(StudentDao.class);}@Afterpublic void after() {if (session != null) {session.close();}}// 新增@Testpublic void test() {Student student = new Student("小黑333", 100);System.out.println("方法之前==" + student);dao.addStudent(student);System.out.println("方法之后==" + student);session.commit();} }?
?之后的刪除,修改,刪除和查詢也是同樣的操作!
轉載于:https://www.cnblogs.com/HHR-SUN/p/7201386.html
總結
以上是生活随笔為你收集整理的mybatis04--Mapper动态代理实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 构造方法:
- 下一篇: 高仿微信实现左滑显示删除button功能