
1. 获取sqlSessionFactory对象 解析文件的每一个信息,保存在Configuration中,返回包含Configuration的DefaultStatement 注意:MappedStatement:代表一个增删改查的详细信息。2. 获取sqlSession对象 返回一个DefaultSQLSession对象,包含Executor和Configuration; 这一步会创建Executor3. 获取接口的代理对象(MapperProxy) getMapper,使用MapperProxyFactory创建一个MapperProxy的代理对象 代理对象里面包含了,DefaultSqlSession(Executor)4. 执行增删改查方法总结: 1. 根据配置文件(全局,sql映射)初始化出Configuration对象 2. 创建一个DefaultSqlSession对象, 它里面包含Configuration以及Executor(根据全局配置文件中的defaultExecutorType创建出对应的Executor) 3. DefaultSqlSession.getMapper(),拿到Mapper接口对应的MapperProxy 4. MapperProxy里面有(DefaultSqlSession) 5. 执行增伤改查方法: 1. 调用DefaultSqlSession的增删改查(Executor); 2. 创建StatementHandler对象。同时也会创建出ParameterHandler和ResultSetHandler 3. 调用StatementHandler的预编译参数以及设置参数值。 使用ParameterHandler来给sql设置参数 4. 调用StatementHandler的增删改查方法 5. ResultSetHandler封装结果注意: 四大对象每个创建的时候都会有一个 interceptorChain.pluginAll(parameterHandler);
- 根据配置文件创建SQLSessionFactory

- 返回SqlSession的实现类DefaultSqlSession对象。他里面包含了Executor和Configuration;Executor会在这一步被创建

- getMapper返回接口的代理对象包含了SqlSession对象

- 查询流程

查询流程总结
