Mapper配置,注解/XML。不推荐使用注解,因为修改sql后java文件需要重新编译
Mapper接口,Dao层接口,(只需要写接口,不需要写实现类:需要遵守约定)
接口书写要遵循约定:方法名和配置文件的id值相同
参数类型必须相同parameterType
返回值类型相同resultType
…
SqlSessionFactory:SqlSession工厂,调用他的openSqlSession()产生SqlSession
SqlSession:类似JDBC的Connection连接对象
Executor:MyBatis的Mapper语句都是通过他来执行
StatementHandler:(负责sql语句)数据库处理对象
PrameterHandler:处理sql中的参数
Executor:同上,Mapper的执行器
ResultSetHandler:处理sql的返回结果集
StatementHandler(SQL)—>PrameterHandler(SQL参数)–>ResultSetHandler(返回结果集)
TypeHandler(类型转换器)。例parameterType、resultType中可能会使用
加载配置文件(核心配置文件、映射文件)---->创建会话工厂(SqlSessionFactory)----->创建会话(SqlSession)---->创建执行器(Executor)---->封装SQL对象(MappedStatement 入参、返回结果)---->DB
一对一、延迟加载
<resultMap id="userResultMap" type="com.sms.pojo.User">
<id property="userId" column="user_id"/>
<result property="loginName" column="login_name"/>
<result property="password" column="password"/>
<association property="emp" select="select * from emp"
column="emp_id"/>
</resultMap>
一对多
<resultMap id="userResultMap" type="com.sms.pojo.User">
<id property="userId" column="user_id"/>
<result property="loginName" column="login_name"/>
<result property="password" column="password"/>
<collection property="" property="emp" select="select * from emp" column="emp_id"/>
</resultMap>
本文地址:https://blog.csdn.net/qq_44836626/article/details/107295472
如对本文有疑问, 点击进行留言回复!!
[JVM学习之路]一、初识JVM,了解其结构、模型及生命周期
【JAVA并发编程】LinkedBlockingQueue原理
网友评论