mybatis中动态代理产生的要点:
1、Mapper接口在初始SqlSessionFactory注册的
2、Mapper接口注册在了名为MapperRegistry类的HashMap中,key=Mapper class value=创建当前的Mapper工厂
3、Mapper注册之后,可以从SqlSession中get
4、SqlSession.getMapper运用了JDK动态代理,产生了目标Mapper接口的代理对象
5、动态代理的代理类是MapperProxy,这里边最终完成了增删改查方法的调用
源码“路程”如下图所示: