MyBatisSQL映射文件的几个顶级元素配置
mapper:映射文件的根元素节点,只有一个属性namespace。
cache:配置给定命名空间的缓存。
cache-ref:从其他命名空间引用缓存配置。
resultMap:用来描述数据库结果集和对象的对应关系。
sql:可以重用的SQL块,也可以被其他语句引用。
insert:映射插入语句。
update:映射修改语句。
delete:映射删除语句。
select:映射查询语句。
<mapper namespace="cn.yong.dao.UserMapper">
<!-- resultMap映射自定义结果 -->
<select id="getUserList" resultMap="userList" parameterType="User">
select u.*,r.roleName from smbms_user u,smbms_role r where userName
like CONCAT ('%',#{userName},'%') and
userRole=#{userRole} and
u.userRole = r.id
</select>
<resultMap type="User" id="userList">
<result property="id" column="id" />
<result property="userCode" column="userCode" />
<result property="userName" column="userName" />
<result property="phone" column="phone" />
<result property="birthday" column="birthday" />
<result property="gender" column="gender" />
<result property="userRole" column="userRole" />
<result property="userRoleName" column="roleName" />
</resultMap>
<!-- 增加用户 -->
<insert id="add" parameterType="int">
INSERT INTO `smbms_user`
(`userCode`, `userName`, `userPassword`, `gender`, `birthday`,
`phone`, `address`, `userRole`, `createdBy`, `creationDate`)
VALUES
(#{userCode},#{userName},#{userPassword},#{gender},#{birthday},#{phone},#{address},#{userRole},#{createdBy},#{creationDate})
</insert>
<!-- 修改用户 -->
<insert id="update" parameterType="int">
update `smbms_user` set
`userCode`=#{userCode}, `userName`=#{userName},
`userPassword`=#{userPassword}, `gender`=#{gender},
`birthday`=#{birthday},
`phone`=#{phone}, `address`=#{address}, `userRole`=#{userRole},
`createdBy`=#{createdBy}, `modifyDate`=#{modifyDate} where id=#{id}
</insert>
<!-- 删除用户 -->
<delete id="deleteUserById" parameterType="Integer">
delete from smbms_user
where id=#{id}
</delete>
</mapper>