第一步:在映射文件中进行配置
<!--添加用户-->
<insert id="insertCustomer" parameterType="com.ctbu.domain.Customer">
<selectKey keyColumn="cust_id" keyProperty="cust_id" order="AFTER" resultType="Integer">
select last_insert_id()
</selectKey>
insert into `customer` (cust_name,cust_profession,cust_phone,email) values (#{cust_name},#{cust_profession},#{cust_phone},#{email})
</insert>
属性介绍:
keyColumn:数据库中id对应的字段名称
keyProperty:要封装到对应对象的那个字段的字段名称
order:在事务之前还是之后(我们这里应该是之后)
resultType:返回的id的数据类型,应该和数据库以及实体类的id类型保持一致
第二步:在测试类中进行打印
@Test
public void insertCustomer(){
SqlSession session = MyUtils.openSession();
Customer customer = new Customer();
customer.setCust_name("heihei");
customer.setCust_phone("110");
customer.setEmail("22342@qq.com");
session.insert("insertCustomer", customer);
session.commit();
System.out.println(customer.getCust_id()); //看我们这里的打印是放在事务提交之后的
session.close();
}