首页 > 其他分享 >009.MyBatis数据插入操作

009.MyBatis数据插入操作

时间:2022-11-28 20:12:16浏览次数:36  
标签:insert goods title 插入 session MyBatis 009 主键

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

相关文章

  • springboot+mysql+mybatis逆向工程
     最近一直再做hibernate相关的工作,想捡起遗忘了一年的mybatis,就在自己的demo项目中引入了一下,记录下过程,这里只生成mapper和model和mapper.xml一、引入依赖  ......
  • mybatis快速xml技巧
    1.查询2.条件查询参数传递[封装]方式三种......
  • Cisco nexus 7009 端口抖动延时调整
    一、故障描述  在运营商网络中,长距离的光缆需要经过OTN设备进行长发光传输到达对端设备。在使用的过程中,OTN设备为了保护链路传输会经常的进行端口倒换,如果该操作时间过......
  • SpringBoot整合MybatisPlus实现分页功能
    首先,展示一下项目的主题:  创建数据库,放入一些数据,方便我们接下来的功能演示: 接下来,我们创建一个实体类,然后写对应的接口:packagecom.example.domain;importlo......
  • WORD VBA 插入页码
    Sub插入页码()ActiveDocument.PageSetup.OddAndEvenPagesHeaderFooter=False'关闭奇偶页相同(防止上回启用奇偶页不同后没有关闭此项设置)WithActiveWindow.Active......
  • Free Mybatis Tool插件
    FreeMybatispluginFreeMybatisTool老规矩先吹一波......这个idea里面的插件真的十分nice,上个图让你们知道他的优秀。直接在idea插件搜索就可以安装啦。1、跳转功能......
  • springBoot mybatis-plus mySql代码生成器
    一、用到的依赖参考官网<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/X......
  • mybatis-执行sql流程
    一、获取mapper代理对象DefaultSqlSession.getMapper(Classtype)public<T>TgetMapper(Class<T>type){returnconfiguration.getMapper(type,this);}Con......
  • jquery009-js执行的先后顺序
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title></head><bodystyle="width:980px;margin:0auto"><h1>#一,当页面框架......
  • Java开发学习(四十四)----MyBatisPlus查询语句之查询条件
    1、查询条件前面我们只使用了lt()和gt(),除了这两个方法外,MybatisPlus还封装了很多条件对应的方法。MybatisPlus的查询条件有很多:范围匹配(>、=、between)模糊匹......