1.在 EmoloyeeMapper.java 中定义相对于的方法;
package com.Mybatis.Dao;
import com.Mybatis.entity.Employee;
public interface EmployeeMapper {
public Employee getEmpById(Integer id);
public void addEmp(Employee employee);
public void updateEmp(Employee employee);
public void delEmpById(Integer id);
}
2.在 EmployeeMapping.xml 中增加对应的方法
<select id="getEmpById" resultType="com.Mybatis.entity.Employee">
select * from Mybatis_Employee where id = #{id}
</select>
<insert id="addEmp" useGeneratedKeys="true" keyProperty="id" >
insert into mybatis_employee(Last_Name,Email,Gender) values (#{Last_Name},#{Email},#{Gender})
</insert>
<update id="updateEmp">
Update mybatis_employee
set Last_Name = #{Last_Name},Email=#{Email},Gender = #{Gender}
where id=#{id};
</update>
<delete id="delEmpById">
Delete from mybatis_employee where id=#{id}
</delete>
</mapper>
3.在全局配置文件中注入 Sql 配置文件(EmployeeMapping.xml)
<mappers>
<mapper resource="EmployeeMapping.xml" />
</mappers>
在步骤 2 中
<insert id="addEmp" useGeneratedKeys="true" keyProperty="id" >
mysql 支持自增主键,自增主键的获取,mybatis 也是利用 Statement.getGenreatedKeys();
userGenerateKeys="true":使用自增主键获得主键值策略
keyProperty:指定对应的主键属性,也就是 Mybatis 获取到主键后,将这个值封装给 JavaBean 的那个属性
那么其作用是在何处:
1.不使用 useGeneratedKeys="true" keyProperty="id"
会发现取出来的 id 值是为空的
2.使用 useGeneratedKeys="true" keyProperty="id"
此刻的 id 是有值的
所以他能获得自增主键值
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于