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插入语句,然后插入到表中,但是用的是自带的插入方法,所以就直接奔着这种方法去改了,最后成功了。

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

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

     

     

  • 相关阅读:
    java全栈day01-03注释、关键字与标识符
    java全栈day01-02入门案例
    java全栈day01-01
    Python中list常用的10个基本方法----list的灰魔法
    python开发[第二篇]------str的7个必须掌握的方法以及五个常用方法
    Python开发【第二篇】:Python基本数据类型
    爬虫相关
    存储库-MongoDB简单的操作
    解析库-beautifulsoup模块
    拉勾网自动发送简历
  • 原文地址:https://www.cnblogs.com/ln0808/p/10701411.html
Copyright © 2011-2022 走看看