1.数据库事务
2.新增
3.实现步骤
3.1 goods.xml 在插入的时候没有插入主键是因为主键设置成了自增字段,<selectKey >的作用是进行主键回填
<insert id="insert" parameterType="com.imooc.mybatis.entity.Goods" flushCache="true">
INSERT INTO t_goods(title, sub_title, original_cost, current_price, discount, is_free_delivery, category_id)
VALUES (#{title} , #{subTitle} , #{originalCost}, #{currentPrice}, #{discount}, #{isFreeDelivery}, #{categoryId})
<selectKey resultType="Integer" keyProperty="goodsId" order="AFTER">
select last_insert_id()
</selectKey>
</insert>
3.2 测试
/** * 新增数据 * * @throws Exception */ @Test public void testInsert() throws Exception { SqlSession session = null; try { session = MyBatisUtils.openSession(); Goods goods = new Goods(); goods.setTitle("测试商品"); goods.setSubTitle("测试子标题"); goods.setOriginalCost(200f); goods.setCurrentPrice(100f); goods.setDiscount(0.5f); goods.setIsFreeDelivery(1); goods.setCategoryId(43); //insert()方法返回值代表本次成功插入的记录总数 int num = session.insert("goods.insert", goods); session.commit();//提交事务数据 System.out.println(goods.getGoodsId()); } catch (Exception e) { if (session != null) { session.rollback();//回滚事务 } throw e; } finally { MyBatisUtils.closeSession(session); } }
标签:insert,goods,title,插入,session,MyBatis,009,主键 From: https://www.cnblogs.com/LLL0617/p/16933473.html