基于MyBatis入门一 继续讲解Mapper.xml映射配置文件
SQL映射的XML文件
MyBatis 真正的强大在于映射语句,专注于SQL,功能强大,SQL映射的配置却是相当简单 SQL映射文件的几个顶级元素(按照定义的顺序)
- mapper - namespace cache - 配置给定命名空间的缓存
- cache-ref – 从其他命名空间引用缓存配置
- resultMap –用来描述数据库结果集和对象的对应关系
- sql – 可以重用的SQL块,也可以被其他语句引用
注意!!!
id 命名空间中唯一的标识符 接口中的方法与映射文件中的SQL语句id一一对应
parameterType 传入SQL语句的参数类型
resultType SQL语句返回值类型
-
insert – 映射插入语句
<!--新增-->
<insert id="add" parameterType="User" >
insert into smbms_user (userCode,userName,userPassword)
values ( #{userCode},#{userName},#{userPassword})
</insert>
-
update – 映射更新语句
<!--修改-->
<update id ="modify" parameterType="User">
update smbms_user set userCode = #{userCode},
userName = #{userName},
userPassword = #{userPassword} where id = #{id}
</update>
-
delete – 映射删除语句
<!-- 删除 -->
<delete id="del" parameterType="int">
delete from smbms_role where id=#{id}
</delete>
-
select – 映射查询语句
<!-- 查询全部 -->
<select id="getByRole" resultType="Role">
select * from smbms_role
</select>
<!-- 模糊查询 -->
<select id="getByRolee" resultType="Role" parameterType="string">
SELECT * FROM smbms_role WHERE roleName LIKE CONCAT('%',#{roleName},'%')
</select>
mapper 的namespace:命名空间
namespace和子元素的id联合保证唯一,区别不同的mapper 绑定DAO接口 namespace的命名必须跟某个接口同名 接口中的方法与映射文件中SQL语句id一一对应