mybatis重要组件

2020-09-24  本文已影响0人  7ee4c95bcc68

mybatis重要组件

  1. Configuration 类是用于管理MyBatis全局配置文件的关系类

    • Environment->DataSource
    • Map<String, MappedStatement> mappedStatements
  2. SqlSessionFactory

    • SqlSessionFactory是Session的管理工厂接口,用于开启SqlSession
  3. SqlSession SqlSession中包含了许多面向开发者的调用方法,如selectOne()、selectList()、delete()、update()等方法。

    • SqlSessionTemplate
    • DefaultSqlSession
  4. MappedStatement MappedStatement是Mapper.xml配置文件的封装对象,其中包含SQL语句(SqlSource)、输入参数(ParameterMap)

  5. StatementHandler StatementHandler接口具体操作数据库相关的Handler,提供query()、getBoundSql()等方法。

  6. ResultHandler ResultHandler接口用于操作数据库返回结果。

Executor

StatementHandler

在创建 SimpleStatementHandler PreparedStatementHandler CallableStatementHandler调用父类构造方法 BaseStatementHandler 创建了 ParameterHandler ResultSetHandler

protected BaseStatementHandler(Executor executor, MappedStatement mappedStatement, Object parameterObject, RowBounds rowBounds, ResultHandler resultHandler, BoundSql boundSql){
    // ....
    //构建parameterHandler
    this.parameterHandler = configuration.newParameterHandler(mappedStatement, parameterObject, boundSql);
    //构建resultSetHandler
    this.resultSetHandler = configuration.newResultSetHandler(executor, mappedStatement, rowBounds, parameterHandler, resultHandler, boundSql);

}
上一篇下一篇

猜你喜欢

热点阅读