Mybatis
一、 Mapper层
-
使用面向接口编程思想
-
使用@Mapper注解**
-
方法名字要和对应的Xml文件中的id对应
@Component @Mapper public interface RoleMapper { /** * 查找所有人员 * @return roles */ List<Role> findAll(); /** * 新增role数据 * @param role * @return 1 保存成功、0 保存失败???为啥?是系统封装好的吗? */ int insertRole(Role role); /** * 修改role * @param role */ int updateRole(Role role); /** * 通过id删除role * @param id */ void deleteRole(long id); }
二、Xml文件
- namespace属性中的路径要和Mapper文件对应
- 事件id要和Mapper文件的方法名对应
<?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" >
<mapper namespace="com.ray.study.spring.mybatisinaction.mapper.RoleMapper">
<select id="findAll" resultType="com.ray.study.spring.mybatisinaction.entity.Role" >
Select * from Role
<where>
<if test="roleName !=null ">
role_name like #{roleName}
</if>
<if test="roleCode !=null ">
role_code like #{roleCode}
</if>
</where>
</select>
<insert id="insertRole" parameterType="com.ray.study.spring.mybatisinaction.entity.Role">
insert into role(role_code,role_name) values(#{roleCode},#{roleName})
</insert>
<update id="updateRole" parameterType="com.ray.study.spring.mybatisinaction.entity.Role">
update role set role_code = #{roleCode} , role_name = #{roleName} where id=#{id}
</update>
<delete id="deleteRole" parameterType="long">
delete from role where id=#{id}
</delete>
</mapper>