mybatis的生命周期
时间: 2023-11-16 13:06:33 浏览: 68
MyBatis 的生命周期主要包括以下几个阶段:
1. SqlSessionFactoryBuilder 的构建阶段:SqlSessionFactoryBuilder 是用来构建 SqlSessionFactory 的类,在这个阶段会读取配置文件和映射文件,并将其解析成相应的 Java 对象。
2. SqlSessionFactory 的构建阶段:SqlSessionFactory 是一个单例的工厂类,用来创建 SqlSession 对象。在这个阶段会将解析后的配置信息传递给 SqlSessionFactory,SqlSessionFactory 会根据配置信息创建相应的 SqlSession 对象。
3. SqlSession 的使用阶段:SqlSession 是 MyBatis 中用来执行 SQL 语句的核心类,通过 SqlSession 可以执行增删改查等操作。在这个阶段,我们会通过 SqlSession 来执行 SQL 语句。
4. Executor 的执行阶段:Executor 是 MyBatis 中用来执行 SQL 语句的类,它会负责将 SQL 语句转换为 JDBC 的操作,并将结果映射为 Java 对象。在这个阶段,Executor 会根据 SQL 语句类型执行相应的操作,并将结果进行映射。
5. StatementHandler 的处理阶段:StatementHandler 是 Executor 中用来处理 SQL 语句的类,它会将 SQL 语句转换为 JDBC 的操作,并执行 SQL 语句。在这个阶段,StatementHandler 会根据 SQL 语句类型将 SQL 语句转换为相应的 JDBC 操作,并执行 SQL 语句。
6. ParameterHandler 的处理阶段:ParameterHandler 是 StatementHandler 中用来处理参数的类,它会将 SQL 语句中的参数转换为相应的 Java 对象。在这个阶段,ParameterHandler 会将 SQL 语句中的参数转换为相应的 Java 对象,并将 Java 对象设置给 PreparedStatement。
7. ResultSetHandler 的处理阶段:ResultSetHandler 是 Executor 中用来处理结果集的类,它会将 JDBC 返回的结果集转换为相应的 Java 对象。在这个阶段,ResultSetHandler 会将 JDBC 返回的结果集转换为相应的 Java 对象,并将 Java 对象返回给调用方。