非常重要:
CRUD
sql映射文件:
<!--public void addEmp(Employee employee); parameterType可省略-->
<insert id="addEmp" parameterType="com.stayreal.mybatis.Employee">
insert into tbl_employee(last_name,email,gender)
values(#{lastName},#{email},#{gender})
</insert>
<!--public void updateEmp(Employee employee);-->
<update id="updateEmp">
update tbl_employee set last_name=#{lastName},email=#{email},gender=#{gender}
where id=#{id}
</update>
<!--public void deleteEmpById(Integer id);-->
<delete id="deleteEmpById">
DELETE from tbl_employee where id = #{id}
</delete>
接口
public interface EmployeeMapper {
public Employee getEmpById(Integer id);
public void addEmp(Employee employee);
public boolean updateEmp(Employee employee);
public void deleteEmpById(Integer id);
}
junit测试
/**
* mybatis允许增删改定义,以下类型的返回值:
* Integer\Long\Boolean 在接口中写返回值即可
*/
@Test
public void testCRUD(){
session = sqlSessionFactory.openSession();// 获取到的session不自动提交数据
EmployeeMapper employeeMapper = session.getMapper(EmployeeMapper.class);
// 测试添加
// Employee employee = new Employee(null,"Jerry","Jerry@qq.com","1");
// employeeMapper.addEmp(employee);
// 测试修改
Employee employee = new Employee(1,"Jerry","Jerry@qq.com","1");
Boolean bool = employeeMapper.updateEmp(employee);
System.out.println(bool); // true
// 测试删除
// employeeMapper.deleteEmpById(2);
// 手动提交
session.commit();
}