一.Mybatis架构设计
二.Mybatis核心组件
1.Configuration:用于描述MyBatis主配置文件信息,MyBatis框架在启动时会加载主配置文件,将配置信息转换为Configuration对象。
2.SqlSession:面向用户的API,是MyBatis与数据库交互的接口。
3.Executor:SQL执行器,用于和数据库交互。SqlSession 可以理解为 Executor 组件的外观(外观模式),真正执行SQL的是Executor组件。
4.MappedStatement:用于描述SQL配置信息,MyBatis框架启动时,XML文件或者注解配置的 SQL信息会被转换为MappedStatement对象注册到Configuration组件中。
5.StatementHandler:封装了对JDBC中Statement对象的操作,包括为Statement参数占位符设置值,通过Statement对象执行SQL语句。
6.TypeHandler:类型处理器,用于Java类型与JDBC类型之间的转换。
7.ParameterHandler:用于处理SQL中的参数占位符,为参数占位符设置值。
8.ResultSetHandler:封装了对ResultSet对象的处理逻辑,将结果集转换为Java实体对象。