项目需求是,一张表添加数据的同时,另一张表也须要添加数据,话很少说,直接上代码。数据库
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