当前位置: 首页 > news >正文

重庆网站设计公司价格wordpress建站收录快

重庆网站设计公司价格,wordpress建站收录快,网站备案怎么查,移动网站开发框架目录 概述 使用 依赖与配置 代码 概述 TCC 模式是一种侵入式的分布式事务解决方案#xff0c;它不依赖于数据库的事务#xff0c;而是要求开发者自定义完成 预提交、提交、回滚的方法逻辑。因此#xff0c;它是一个种偏 复杂、灵活、有侵入性 的分布式事务处理方案。 De…目录 概述 使用 依赖与配置 代码 概述 TCC 模式是一种侵入式的分布式事务解决方案它不依赖于数据库的事务而是要求开发者自定义完成 预提交、提交、回滚的方法逻辑。因此它是一个种偏 复杂、灵活、有侵入性 的分布式事务处理方案。 Demo 这里附上seata的学习代码demo开箱即用。包含AT/TCC/XA等模式的使用案例https://download.csdn.net/download/lmj3732018/88864802 使用 依赖与配置 Seata的TCC模式依赖和配置与AT模式完全一致只是TCC模式不需要定义 undo_log 数据库表这里不再赘述。 代码 1. 在使用时我们需要在多个本地事务分支的外层使用 GlobalTransactional 开启全局事务 Override GlobalTransactional(namecreateOrder,rollbackForException.class) public Order saveOrder(OrderVo orderVo) {log.info(用户下单);log.info(当前 XID: {}, RootContext.getXID());//获取全局唯一订单号 测试使用Long orderId UUIDGenerator.generateUUID();//阶段一 创建订单Order order orderService.prepareSaveOrder(orderVo,orderId);//扣减库存storageFeignService.deduct(orderVo.getCommodityCode(), orderVo.getCount());//扣减余额accountFeignService.debit(orderVo.getUserId(), orderVo.getMoney());return order; } 2. 定义各个本地事务分支的预提交、提交、回滚方法 OrderService 接口 /**** 通过 LocalTCC 这个注解RM 初始化的时候会向 TC 注册一个分支事务。*/ LocalTCC public interface OrderService {/*** TCC的try方法保存订单信息状态为支付中** 定义两阶段提交在try阶段通过TwoPhaseBusinessAction注解定义了分支事务的 resourceIdcommit和 cancel 方法* name 该tcc的bean名称,全局唯一* commitMethod commit 为二阶段确认方法* rollbackMethod rollback 为二阶段取消方法* BusinessActionContextParameter注解 传递参数到二阶段中* useTCCFence seata1.5.1的新特性用于解决TCC幂等悬挂空回滚问题需增加日志表tcc_fence_log*/TwoPhaseBusinessAction(name prepareSaveOrder, commitMethod commit, rollbackMethod rollback, useTCCFence true)Order prepareSaveOrder(OrderVo orderVo, BusinessActionContextParameter(paramName orderId) Long orderId);/**** TCC的confirm方法订单状态改为支付成功** 二阶段确认方法可以另命名但要保证与commitMethod一致* context可以传递try方法的参数** param actionContext* return*/boolean commit(BusinessActionContext actionContext);/*** TCC的cancel方法订单状态改为支付失败* 二阶段取消方法可以另命名但要保证与rollbackMethod一致** param actionContext* return*/boolean rollback(BusinessActionContext actionContext); } OrderServiceImpl实现类 Service Slf4j public class OrderServiceImpl implements OrderService {Autowiredprivate OrderMapper orderMapper;OverrideTransactional(rollbackFor Exception.class)public Order prepareSaveOrder(OrderVo orderVo,BusinessActionContextParameter(paramName orderId) Long orderId) {// 保存订单Order order new Order();order.setId(orderId);order.setUserId(orderVo.getUserId());order.setCommodityCode(orderVo.getCommodityCode());order.setCount(orderVo.getCount());order.setMoney(orderVo.getMoney());order.setStatus(OrderStatus.INIT.getValue());Integer saveOrderRecord orderMapper.insert(order);log.info(保存订单{}, saveOrderRecord 0 ? 成功 : 失败);return order;}Overridepublic boolean commit(BusinessActionContext actionContext) {// 获取订单idlong orderId Long.parseLong(actionContext.getActionContext(orderId).toString());//更新订单状态为支付成功Integer updateOrderRecord orderMapper.updateOrderStatus(orderId, OrderStatus.SUCCESS.getValue());log.info(更新订单id:{} {}, orderId, updateOrderRecord 0 ? 成功 : 失败);return true;}Overridepublic boolean rollback(BusinessActionContext actionContext) {//获取订单idlong orderId Long.parseLong(actionContext.getActionContext(orderId).toString());//更新订单状态为支付失败Integer updateOrderRecord orderMapper.updateOrderStatus(orderId, OrderStatus.FAIL.getValue());log.info(更新订单id:{} {}, orderId, updateOrderRecord 0 ? 成功 : 失败);return true;}} 在 storageFeignService 及 accountFeignService的远程方法中也是以同样的方式定义上述三个方法。
http://www.w-s-a.com/news/523471/

相关文章:

  • 湖州吴兴建设局网站加强网站建设的
  • 茌平做网站公司专业商城网站建设报价
  • 网站结构图怎么画wordpress注册不发送件
  • 个人备案网站可以做论坛吗电商推广方式有哪些
  • 网站建设 自适应国内最近的新闻
  • 校园网站开发背景吴江网站建设公司
  • 网站开发工程师发展趋势山东省建设工程电子信息网站
  • 适合大学生创业的网站建设类型吉林省舒兰市建设银行网站
  • 呼和浩特网站建设哪家好培训学校加盟费用
  • 网站如何做友情链接有道云笔记WordPress
  • 贵阳企业网站建设制作赤峰浩诚网站建设公司
  • asp官方网站微信模板素材
  • wordpress 留言给站长发邮件做百度推广员赚钱吗
  • 北京建站公司做网站价格专门找人做软件的网站
  • 商务网站的特点ui软件界面设计
  • 广州个性化网站开发网站索引量是什么意思
  • 公司网站制作专业公司python做后台网站的多吗
  • 桂林建站平台哪家好给别人做网站怎么收取费用
  • python做网站显示表格用visual做的网站
  • 彩票网站建设需要什么聊城网站建设首选天成网络
  • 安徽建设工程网站wordpress标签云代码
  • 推荐佛山顺德网站建设手机网站建设域名空间
  • 电子商务网站建设策划书例子企业官网用什么cms系统
  • 网站栏目设计怎么写平面设计接单报价表
  • 做网站美工要学什么网站推广的方法包括
  • 哪个网站可以做笔译兼职wordpress加表单
  • 百度站内搜索 wordpress微餐饮建站费用
  • 用什么做网站的访问量统计制作手工作品
  • 微信公众号搭建网站河南卫生基层系统网站建设
  • steam账号注册网站重庆手机版建站系统哪家好