mapper映射文件9大元素
映射文件是以<mapper>作为根节点,在根节点中支持9个元素,分别为
insert、update、delete、select(增删改查);
cache、cache-ref、resultMap、parameterMap、sql。
例子:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--namespace必须和所描述接口的全类名保持一致 -->
<mapper namespace="com.imooc.dao.MessageDao">
<!--
数据库的字段和java类的属性对应:
1,type就是类的全名
2,id是配置主键的 result是普通键的 ,column是数据库字段名字 ,property是类属性
-->
<!--
<resultMap type=" pojo.Message" id="MessageResult">
<id column="ID" jdbcType="INTEGER" property="id"/>
<result column="COMMAND" jdbcType="VARCHAR" property="command"/>
<result column="DESCRIPTION" jdbcType="VARCHAR" property="description"/>
<result column="CONTENT" jdbcType="VARCHAR" property="content"/>
</resultMap>
-->
<!--
1,select的id必须和当前接口里面的方法名字保持一致
2,resultMap必须和返回结果的全类名保持一致
-->
<select id="selectMessage" resultMap=" com.imooc.pojo.Message">
select ID,COMMAND,DESCRIPTION,CONTENT from MESSAGE WHERE ID=#{id}
</select>
</mapper>
一,resultMap 自定义结果集映射
$返回结果要么用resultType,要么用自定义的resultMap,二选一
resultMap中:
- type就是类的全名,一般是一个封装好的pojo,id就是引用这个结果集的标记
- id是配置主键的, result是普通键的
- column是数据库字段名字 ,property是类属性
<!--
数据库的字段和java类的属性对应:
1,type就是类的全名
2,id是配置主键的 result是普通键的 ,column是数据库字段名字 ,property是类属性
-->
<resultMap type=" pojo.Message" id="MessageResult">
<id column="ID" jdbcType="INTEGER" property="id