Springboot+Mybaits之两张表同时插入数据

项目需求是,一张表添加数据的同时,另一张表也须要添加数据,话很少说,直接上代码。数据库

 

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

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层spa

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

 

 

 3.Impl层3d

 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.前台code

 

 

 

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

 

 

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

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

网上的方法有不少,可是没有去试过,因此很差作任何的评价。get

 

若有不对地方但愿各位指正、留言io

相关文章
相关标签/搜索