一、 SQL映射文件是什么?
SQL映射文件是MyBatis框架中用于定义数据库操作的XML文件。它与应用程序的数据访问层进行交互,将Java对象与数据库表之间的映射关系进行配置,并提供了执行SQL语句的方式。
二、SQL的顶级元素
<mapper>元素SQL映射文件的根元素,用于定义和组织整个映射文件。在该元素内部,你可以定义<resultMap>、<select>、<insert>、<update>和<delete>等其他顶级元素。该元素可以包含在一个单独的映射文件中或者通过MyBatis的命名空间特性引入其他映射文件
<resultMap>元素
用于定义如何将查询结果集中的列映射到Java对象的属性。
<select>元素 查询
<delete>元素 删除
<insert>元素 新增
<updete>元素 修改
1.mapper
mapper namespace属性
区别不同的mapper namespace和子元素的id联合保证唯一
绑定DAO接口
namespace的命名必须跟某个接口同名
接口中的方法与映射文件语句中SQid一一对应
2.select
select是MyBatis中最常用的元素之一
select元素有很多属性,可以详细配置每一条查询语句 id 命名空间中唯一的标识符
接口中的方法与映射文件中的SQL语句id一一对应
parameterType 传入SQL语句的参数类型
resultType SQL语句返回值类型的完整类名或别名
3.parameterType
parameterType 是在 SQL 映射文件中指定输入参数类型的属性。它用于告诉 MyBatis 框架在执行该 SQL 语句时应该如何处理输入参数
4.mybatis缓存
1.一级缓存(本地缓存):位于 sqlSession 对象的内部,在同一个 sqlSession 中有效。默认情况下,一级缓存是开启的。当执行相同的查询语句时,MyBatis 会首先从一级缓存中查找结果,如果存在则直接返回,避免了对数据库的再次查询。一级缓存是自动的,不需要手动配置。
2.二级缓存(全局缓存):位于 sqlSessionFactory 的作用域中,多个 sqlSession 共享同一个缓存。要启用二级缓存,需要在 MyBatis 的配置文件中进行配置。二级缓存可以使用各种缓存实现,如内存缓存、Redis 等。MyBatis 默认的二级缓存实现是 PerpetualCache。