一、知识点总结
不得不说,黑马的老师不仅思路清晰,总结能力还特别强。学完基于Dao的增删改查之后,他就开始分析源代码了。
分析到最后,我才发现mybatis的增删改查就是那么一回事。增删查都是通过update这一个操作来实现的。
二、基于dao代理的CRUD操作源码分析思路图
三、思路分析
mybatis其实归根结底就是为我们做了两件事:
1、创建dao代理对象
2、调用selectList方法
所以从创建代理对象的方法开始,一步步向前跟踪。根据方法的返回值类型或者在方法中调用的其他方法,继续跟踪。
有两种情况需要注意:
当跟踪的类是抽象类或者是一个接口时,我们就需要寻找它的子类或者实现类。
跟踪到preparedStatement对象的出现,或者说已经在封装结果集时就意味着快要跟踪完了。
当出现selectList方法时,我们的跟踪工作也就真正做完了。