m y batis有几级缓存
时间: 2023-11-19 08:06:13 浏览: 30
MyBatis有两级缓存:一级缓存和二级缓存。
一级缓存是指SqlSession级别的缓存,它缓存了在同一个SqlSession中执行的SQL语句的结果。当执行相同的SQL语句时,MyBatis会先查找一级缓存,如果缓存中存在相同的结果,则直接返回结果,否则执行SQL语句并将结果存入缓存中。
二级缓存是指Mapper级别的缓存,它缓存了在不同的SqlSession中执行的SQL语句的结果。当执行相同的SQL语句时,MyBatis会先查找二级缓存,如果缓存中存在相同的结果,则直接返回结果,否则执行SQL语句并将结果存入缓存中。需要注意的是,二级缓存需要手动开启和配置,而一级缓存是默认开启的。
相关问题
m y batis parametermap
MyBatis ParameterMap是一种用于将Java对象映射到SQL语句中的参数的机制。它允许您在SQL语句中引用Java对象的属性,从而使SQL语句更加灵活和易于维护。
ParameterMap通常是在MyBatis的Mapper XML文件中定义的,它指定了一个Java类以及该类的属性与SQL语句的参数之间的映射关系。例如,以下是一个简单的ParameterMap定义:
```
<parameterMap type="com.example.User" id="userParam">
<parameter property="id" jdbcType="INTEGER"/>
<parameter property="username" jdbcType="VARCHAR"/>
<parameter property="password" jdbcType="VARCHAR"/>
</parameterMap>
```
上述代码定义了一个名为"userParam"的ParameterMap,它将Java类"com.example.User"的"id"、"username"和"password"属性映射到SQL语句的参数中。在SQL语句中,您可以使用"#id#"、"#username#"和"#password#"占位符来引用这些参数。
ParameterMap的优点是它可以将Java对象的属性映射到SQL语句的参数中,从而使SQL语句更加灵活和易于维护。但是,ParameterMap也有一些缺点,例如它需要手动维护,如果Java类的属性发生变化,ParameterMap也需要相应地进行修改。因此,MyBatis也提供了一种更为灵活和自动化的参数映射机制——ParameterType。
m y batis plus
Myatis Plus(简称 MP)是一个基于 MyBatis 的快速、简单、强大的的 ORM 框架,它在 MyBatis 的基础上做了很多的扩展和增强,提供了许多实用的功能,如自动分页、逻辑删除、代码生成器等,可以帮助开发者更加高效地进行数据访问层的开发。同时,MyBatis Plus 也提供了很好的样例和文档,方便开发者快速上手使用。