zoukankan      html  css  js  c++  java
  • Springboot+Mybaits之两张表同时插入数据

    项目需求是,一张表添加数据的同时,另外一张表也需要添加数据,话不多说,直接上代码。

    1.Controller,我把两个DTO直接放到一个@RequestBody中。其中throws是后台获取当前时间抛出的异常,下面有代码

    1 @PostMapping("/addPrize/{id}")
    2     public AdminResponse addPrize (@PathVariable Integer id,
    3                                    @RequestBody PrizeDTO prizeDTO,VipGiftDTO vipGiftDTO,
    4                                    @SessionAttribute("loginMember") Administrator administrator
    5                                     )throws ParseException{
    6         activeLuckyService.insertPrize(id,prizeDTO, administrator,vipGiftDTO);
    7         return new AdminResponse();
    8     }

    2.Service层

    1     void insertPrize(Integer id, PrizeDTO prizeDTO, Administrator administrator,VipGiftDTO vipGiftDTO)throws ParseException;

     3.Impl层

     1 public void insertPrize(Integer id, PrizeDTO prizeDTO, Administrator administrator,VipGiftDTO vipGiftDTO)
     2             throws ParseException {
     3         long bankId = getBankId(administrator);
     4         Prize s = new Prize();
     5         BeanUtils.copyProperties(prizeDTO,s);
     6         //随机给的固定是4,以后根据修改
     7         s.setPrizeType(4);
     8         //不确定是什么,随机给的,等最后确认
     9         s.setPrizeId(1L);
    10         s.setActiveId(id);
    11         pize.insertSelective(s);
    12 
    13 
    14         VipGift v = new VipGift();
    15         BeanUtils.copyProperties(vipGiftDTO,v);
    16         v.setBankPhone(administrator.getUsername());
    17         v.setBankReferrer(administrator.getPassword());
    18         v.setStatus(0);
    19         v.setPrizeId(s.getPrizeId());
    20 
    21 
    22         SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
    23         String now = df.format(new Date());
    24         Date sj = df.parse(now);
    25         v.setCreateTime(sj);
    26         v.setUpdateTime(sj);
    27         v.setBranchName("");
    28         vip.insertSelective(v);
    29     }


    4.前台

    5.之前报错信息,流关闭了

    总结:根据项目需求,之前做的是Controller放入两个@RequestBody,所以试了一下前台请求两个请求路径还是不可以,但是SpringMVC只能获取到一个,所以就试了试把两个DTO放到一个@RequestBody中,后台可以获取到值,可以插入到数据库中。

    之前想过手写两条SQL插入语句,然后插入到表中,但是用的是自带的插入方法,所以就直接奔着这种方法去改了,最后成功了。

    网上的方法有很多,但是没有去试过,所以不好做任何的评价。

    如有不对地方希望各位指正、留言

     

     

  • 相关阅读:
    antd pro2.0 使用记录五:设置代理
    antd pro2.0 使用记录四:右侧顶部菜单栏+新建页面
    antd pro2.0 使用记录三:多个接口调用问题
    antd pro2.0 记录二:登录/注册页面逻辑,调用后台
    实用的Portraiture滤镜磨皮教程
    mysql 远程访问权限
    vc6.0运用mysql数据库中的编码所导致的乱码问题(接收和输出的编码必须要一致)
    飞思卡尔imx6开发板Linux下GPIO驱动
    beagleBone black 中QT的移植
    Beaglebone Black从零开始系列教程大汇总!
  • 原文地址:https://www.cnblogs.com/ln0808/p/10701411.html
Copyright © 2011-2022 走看看