版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_44580977/article/details/96131777
这篇文章将给大家详细介绍mybatis里mapper配置,
标签名称 | 标签作用 |
---|---|
insert | 用来映射插入语句 |
update | 用来映射更新语句 |
delete | 用来映射删除语句 |
select | 用来映射查询语句 |
resultMap | 用来将从数据库结果集取出的数据映射到相应的实体对象的字段中 |
sql | 配置可以被其他语句引用的SQL语句块 |
cache | 给定命名空间的缓存配置 |
cache-ref | 其他命名空间缓存配置的引用 |
parameterMap | 参数映射,该配置现已废弃 |
CURD四个标签中的属性
id="insertUser" //sql语句唯一名
parameterType="coom.mybatis.domian.User"//传入sql语句的参数类型
parameterMap="mappers"//参数映射
resultType="hashmap" //将sql语句返回的结果封装到map里,字段:value
flushCache="false" //是否清除二级缓存 ,二级缓存就是mapper配置下的缓存区域,所有标签共享
userCache="true" //执行结果是否保存到二级缓存
timeout="1000" // 在抛出异常前,驱动程序等待数据库回应的最大秒数
fetchSize="256" //配置数据库每次读取返回的最大条数,一般是默认,调整mysql性能所用
statementType="PREPARED" //设置mybatis的statement类型,
可配置为STATEMENT,PREPARED或CALLABLE中的一个,
表示Statement,PreparedStatement或
CallableStatement类型。默认是PREPARED
resultSetType="FORWARD_ONLY" //设置结果集类型,默认无设置
useGeneratedKeys="false" //设置mybatis使用jdbc的getGeneratedKeys方法来,
获取有数据库内部生成的逐渐(自增主键)。默认值为false
keyProperty="" //代表主键。mybatis会生成主键赋给这个列。联合主键用逗号隔开
keyColumn="" //进队特定数据库生效,当主键列不是表中的第一列时,需要设置该属性。
如果希望得到生成的列,也可以是以都好分隔的属性名称列表
resultMap 一般用在结果集和数据库字段,名字不一样使用resultMap
<!-- 配置 查询结果的列名和实体类的属性名的对应关系 -->
<resultMap id="userMap" type="uSeR">
<!-- 主键字段的对应 -->
<id property="userId" column="id"></id>
<!--非主键字段的对应-->
<result property="userName" column="username"></result>
<result property="userAddress" column="address"></result>
<result property="userSex" column="sex"></result>
<result property="userBirthday" column="birthday"></result>
</resultMap>
sqli标签
<!-- 抽取可重用的SQL片段,方便后面引用
1.sql抽取,经常将要查询的列名,或者插入用的列名,之后方便引用
2.include来引用已经抽取的sql
-->
<sql id="insertColumn">
ename,gender,email,did
</sql>
这是三个标签用的少,用到再说吧cache, cache-ref, parameterMap。
功能内标签
//获取插入插入数据后的自增id
<!-- 配置插入操作后,获取插入数据的id -->
<selectKey keyProperty="userId" keyColumn="id" resultType="int" order="AFTER">
select last_insert_id();
</selectKey>
//maper 配置其实还是很简单的