mybatis运行原理--执行增删改方法
mybatis中sql执行是通过JDK生成的mapperProxy的动态代理类类执行的,所以也就是执行InvocationHandler对应的invoke方法来执行的。调用DefaultSqlSession的Executor的增删改查,会创建一个StatementHandler对象,(同时创建出ParameterHandler和ResultSetHandler),先StatementHandler的预编译参数一级设置参数值,再调用StatementHandler的增删改查,后进行封装结果。
上次代码跟踪图比较复杂,简略一下如下: