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

广州企业网站制作哪家好淘宝做网站 评价话语

广州企业网站制作哪家好,淘宝做网站 评价话语,wordpress注册审核,网站的版式设计为什么存在数据源切换和食物时效问题#xff1f; 由于业务数据来源不同 需要配置多个数据源来进行数据的查询 编辑等操作 这一切换业务对数据的一致性要求很高那就要保证ACID啦 也就是数据的有效性 要么是成功的 要么是失败的。 数据源切换采用mybatisplus支持 多数据源配置 由于业务数据来源不同 需要配置多个数据源来进行数据的查询 编辑等操作 这一切换业务对数据的一致性要求很高那就要保证ACID啦 也就是数据的有效性 要么是成功的 要么是失败的。 数据源切换采用mybatisplus支持 多数据源配置oracle和mysql的数据类型 spring:datasource:dynamic:primary: master #设置默认的数据源或者数据源组,默认值即为masterdatasource:master:username: rootpassword: rootdriver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://10.20.204.130:3306/user?useUnicodetruecharacterEncodingutf-8useSSLfalseserverTimezoneAsia/Shanghaicoloan:username: rootpassword: rootdriver-class-name: oracle.jdbc.driver.OracleDriverurl: jdbc:oracle:thin:10.20.201.173:1521:rthhhhhdb由于是公司业务 故大致做一些特殊类名称的改改写 1方法的入口 RestController public class testContorller {AutowiredtestService testService;PostMapping(/queryBankInfoList)public String queryBankInfoList(){ListCoTodoTask coTodoTasks testService.queryBankInfoList();return JSON.toJSONString(JSON.toJSONString(coTodoTasks));} }service接口定义 public interface testService extends IServiceCoTodoTask {ListTask queryBankInfoList();}实现service的核心类 Service DS(coloan) public class testServiceImpl extends ServiceImplTaskMapper, Task implements testService {AutowiredUserService userService;AutowiredTaskMapper TaskMapper;Transactional(rollbackFor Exception.class)Overridepublic ListTask queryBankInfoList() {// 用户表在MySQLResult result userService.userInfo(117);QueryWrapperTask wrapper new QueryWrapper();wrapper.isNotNull(id);// 任务表在Oracle中ListTask Tasks TaskMapper.selectList(wrapper);return Tasks;} }默认主数据原 这里可以不用注解指定 因为配置文件默认的主数据原就是master 这里我加上了 Service DS(master) public class UserServiceImpl implements UserService {Overridepublic Result userInfo(Integer userId) {User user userMapper.selectUser(userId, null);return new Result().setData(userVO);} }运行调试 发现一下问题 Error querying database. Cause: java.sql.SQLSyntaxErrorException: ORA-00942: 表或视图不存在 注意观察信息 userService的数据库应该是master但是却是coloan的导致代码报500也就是说DS切换数据源没有起作用 初步结论 多数据源失效然后去掉事务发现切换正常 在于这样的切换失去了事务控制的行为。 通过下面的方式解决 Transactional(rollbackFor Exception.class, propagation Propagation.REQUIRED)Overridepublic ListCoTodoTask queryBankInfoList() {...}通过上述的修改 数据源能正常的切换 并且可控事务 2什么是事务的传播特性 当事务方法被另一个事务方法调用时必须指定事务应该如何传播。例如方法可能继续在现有事务中运行也可能开启一个新事务并在自己的事务中运行。 事务的传播行为可以由传播属性指定。Spring定义了7种类传播行为。 演示事务的传播特性 ps:这里借用一下我之前看到的一篇关于事务传播特性特别棒的几张图片。 1:大小事务传播特性都是REQUIRED Transactional(propagation Propagation.REQUIRED)public void multiTransaction() {}Transactional(propagation Propagation.REQUIRED)public void updateBook() {}Transactional(propagationPropagation.REQUIRED)public void updateUser() {}传播流程 大小事务传播特性都是REQUIRES_NEW 传播流程 3:大事务是REQUIRED小1REQUIRED小2REQUIRES_NEW 传播流程 总结 事务会导致多数据源失效这个大家一定要记清 一定要明白事务的传播特性开发中其实常用的就只有REQUIRED和REQUIRES_NEW大家只要把这两个搞明白就能应对绝大数的问题。 以上是mybatis-plus之数据源切换事务失效问题 关注老哥带你上高速 。。。。。。。。。
http://www.sczhlp.com/news/175837/

相关文章:

  • 电商实训网站建设报告关键字查询我的网站怎么做
  • 广东长海建设工程有限公司网站网站前置审批项
  • 商务网站建设做丝网网站哪个好
  • 免费网站建设推广做网页公司有哪些
  • 南通高端网站建设公司建设一个网站的意义
  • 20251008J赛合订本
  • 2025 年氨基酸水溶肥厂家最新推荐榜单:聚焦花芽分化膨果上色需求,精选优质企业助农户科学选购花芽分化/膨果上色/促花稳果/低温酶解氨基酸水溶肥厂家推荐
  • VMware ESXi 8.0U3g macOS Unlocker OEM BIOS 2.7 H3C 新华三 定制版
  • 2025 年最新防火涂料厂家排行榜:钢结构各类防火涂料优质厂家最新推荐,助力建筑安全选型 钢结构/水性/隧道/环保/饰面型防火涂料厂家推荐
  • 电子商务网站例wordpress 页面空白页
  • 网站平台建设是什么抖音代运营怎么跟客户沟通并成交
  • 株洲seo网站推广在哪里可以做公司网站
  • 网站开发构建工具网站cms大全
  • 广西平台网站建设设计wap网站制作视频教程
  • ppt电子商务网站建设东莞皮具网站建设
  • 泰安受欢迎的网站建设黑客如何攻击网站
  • 民政局网站建设方案长春app制作
  • 网站群内容管理系统的设计与实现公司做网站要三千多吗
  • 网站二维码收费怎么做公众号平台制作
  • wordpress新站都该设置些什么懂做网站怎么赚钱
  • 大连市建设局网站福州网站设计网站系统制作
  • 怀化市鹤城区建设局网站创业平台的选择
  • 建设什么网站可以上传视频顺德购物网站建设
  • 自适应网站价格海南住房建设厅网站
  • 移动 网站 素材html5 房地产网站案例
  • 做游戏网站需要注意的问题十大广告公司排名
  • wordpress 七牛设置昆明百度推广优化排名
  • 弹幕做的视频网站电脑ppt制作软件
  • 赤峰建设业协会的官方网站怎么依赖网站开发app
  • 购物网站seo关键词定位amh wordpress伪静态设置