service同时向两张表插入数据

本文探讨了在商品管理系统中,如何确保商品的基本属性和描述信息同时成功或失败地保存到各自表中。通过将相关逻辑整合到一个service中,确保它们在一个事务内操作,以保证数据一致性。同时强调了在service层不应使用try--catch来捕获异常,以免影响事务的正常回滚。
摘要由CSDN通过智能技术生成

前面提到表结构的优化分离,商品分为基本属性表和商品描述表


当前端新增商品的时候提交基本属性的同时也提交了商品描述表。controller写成如下形式:

@RequestMapping("item")
@Controller
public class ItemController {
    @Autowired
    private ItemService itemService;
    @Autowired
    private ItemDescService itemDescService;
    @RequestMapping(method=RequestMethod.POST)
    public ResponseEntity<Void> saveItem(Item item,@RequestParam("desc") String desc){
        try {
//            增加商品基本数据
            this.itemService.save(item);
//            增加商品描述数据
            ItemDesc itemDesc=new ItemDesc();
            itemDesc.setItemDesc(desc);
            itemDesc.setItemId(item.getId());
            this.itemDescService.save(itemDesc);
            
           return ResponseEntity.status(HttpStatus.CREATED).
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值