码迷,mamicode.com
首页 > 其他好文 > 详细

TX-LCN分布式事务-- TCC事务模式(生产者模块)

时间:2021-05-03 12:02:17      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:set   ring   class   ret   rgba   control   vat   pos   template   

 

自己学习用,待补充!

 

对比 LNC模块,就改一下  Controller (注解要换):

 

@Controller
public class TccController {

    @Autowired
    ProducerInfoMapper producerInfoMapper;

    @Autowired
    RestTemplate restTemplate;

    private static ConcurrentMap<String,String> maps = new ConcurrentHashMap<>();


    @RequestMapping("/addProducer-tcc")
    @Transactional(rollbackFor = Exception.class)
    @TccTransaction
    public @ResponseBody String AddProducer(){

        JSONObject json = new JSONObject();
        ProducerInfo producerInfo = new ProducerInfo();
        String id = SnowFlake.nextId()+"";
        System.out.println("获得Id : "+id);
        maps.put("id",id);
        json.put("id",id);
        producerInfo.setId(id);
        producerInfo.setName("li");
        restTemplate.postForEntity("http://localhost:8090/addConsumer-tcc",json,String.class);
        int i = 1/0;
        producerInfoMapper.insert(producerInfo);
        return "addProducer插入成功";
    }

    public String confirmAddProducer(){

        System.out.println("confirm--Producer  :  "+maps.get("id"));

        return "";
    }

    public String cancelAddProducer(){

        String id = maps.get("id");
        System.out.println("cancel-id : "+id);
        int i = producerInfoMapper.deleteByPrimaryKey(id);
        System.out.println("cancel--Producer  : " +i);
        return "";
    }

 

TX-LCN分布式事务-- TCC事务模式(生产者模块)

标签:set   ring   class   ret   rgba   control   vat   pos   template   

原文地址:https://www.cnblogs.com/lifan12589/p/14722943.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!