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

泰和县建设局网站怎样做能直接上传微信的视频网站

泰和县建设局网站,怎样做能直接上传微信的视频网站,网页制作与网站建设技术大全 pdf,网站开发投稿可行吗一、JTA组件简介1、JTA基本概念JTA即Java-Transaction-API#xff0c;JTA允许应用程序执行分布式事务处理#xff0c;即在两个或多个网络计算机资源上访问并且更新数据。JDBC驱动程序对JTA的支持极大地增强了数据访问能力。XA协议是数据库层面的一套分布式事务管理的规范,JTA…一、JTA组件简介1、JTA基本概念JTA即Java-Transaction-APIJTA允许应用程序执行分布式事务处理即在两个或多个网络计算机资源上访问并且更新数据。JDBC驱动程序对JTA的支持极大地增强了数据访问能力。XA协议是数据库层面的一套分布式事务管理的规范,JTA是XA协议在Java中的实现,多个数据库或是消息厂商实现JTA接口,开发人员只需要调用SpringJTA接口即可实现JTA事务管理功能。JTA事务比JDBC事务更强大。一个JTA事务可以有多个参与者而一个JDBC事务则被限定在一个单一的数据库连接。下列任一个Java平台的组件都可以参与到一个JTA事务中2、分布式事务分布式事务(DistributedTransaction)包括事务管理器(TransactionManager)和一个或多个支持 XA 协议的资源管理器 ( Resource Manager )。资源管理器是任意类型的持久化数据存储容器例如在开发中常用的关系型数据库MySQLOracle等消息中间件RocketMQ、RabbitMQ等。事务管理器提供事务声明事务资源管理同步事务上下文传播等功能并且负责着所有事务参与单元者的相互通讯的责任。JTA规范定义了事务管理器与其他事务参与者交互的接口其他的事务参与者与事务管理器进行交互。二、SpringBoot整合JTA项目整体结构图1、核心依赖org.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-jta-atomikos2、环境配置这里jtaManager的配置在日志输出中非常关键。spring:jta:transaction-manager-id: jtaManager# 数据源配置datasource:type: com.alibaba.druid.pool.DruidDataSourcedata01:driverClassName: com.mysql.jdbc.DriverdbUrl: jdbc:mysql://localhost:3306/data-oneusername: rootpassword: 000000data02:driverClassName: com.mysql.jdbc.DriverdbUrl: jdbc:mysql://localhost:3306/data-twousername: rootpassword: 0000003、核心容器这里两个数据库连接的配置手法都是一样的可以在源码中自行下载阅读。基本思路都是把数据源交给JTA组件来统一管理方便事务的通信。数据源参数ComponentConfigurationProperties(prefix spring.datasource.data01)public class DruidOneParam {private String dbUrl;private String username;private String password;private String driverClassName;}JTA组件配置package com.jta.source.conifg;ConfigurationMapperScan(basePackages {com.jta.source.mapper.one},sqlSessionTemplateRef data01SqlSessionTemplate)public class DruidOneConfig {private static final Logger LOGGER LoggerFactory.getLogger(DruidOneConfig.class) ;Resourceprivate DruidOneParam druidOneParam ;PrimaryBean(dataSourceOne)public DataSource dataSourceOne () {// 设置数据库连接MysqlXADataSource mysqlXADataSource new MysqlXADataSource();mysqlXADataSource.setUrl(druidOneParam.getDbUrl());mysqlXADataSource.setUser(druidOneParam.getUsername());mysqlXADataSource.setPassword(druidOneParam.getPassword());mysqlXADataSource.setPinGlobalTxToPhysicalConnection(true);// 事务管理器AtomikosDataSourceBean atomikosDataSourceBean new AtomikosDataSourceBean();atomikosDataSourceBean.setXaDataSource(mysqlXADataSource);atomikosDataSourceBean.setUniqueResourceName(dataSourceOne);return atomikosDataSourceBean;}PrimaryBean(name sqlSessionFactoryOne)public SqlSessionFactory sqlSessionFactoryOne(Qualifier(dataSourceOne) DataSource dataSourceOne) throws Exception{// 配置Session工厂SqlSessionFactoryBean sessionFactory new SqlSessionFactoryBean();sessionFactory.setDataSource(dataSourceOne);ResourcePatternResolver resolver new PathMatchingResourcePatternResolver();sessionFactory.setMapperLocations(resolver.getResources(classpath*:/dataOneMapper/*.xml));return sessionFactory.getObject();}PrimaryBean(name data01SqlSessionTemplate)public SqlSessionTemplate sqlSessionTemplate(Qualifier(sqlSessionFactoryOne) SqlSessionFactory sqlSessionFactory) {// 配置Session模板return new SqlSessionTemplate(sqlSessionFactory);}}4、测试对比这里通过两个方法测试结果做对比在两个数据源之间进行数据操作时只需要在接口方法加上Transactional注解即可这样保证数据在两个数据源间也可以保证一致性。Servicepublic class TransferServiceImpl implements TransferService {Resourceprivate UserAccount01Mapper userAccount01Mapper ;Resourceprivate UserAccount02Mapper userAccount02Mapper ;Overridepublic void transfer01() {userAccount01Mapper.transfer(jack,100);System.out.println(i1/0);userAccount02Mapper.transfer(tom,100);}TransactionalOverridepublic void transfer02() {userAccount01Mapper.transfer(jack,200);System.out.println(i1/0);userAccount02Mapper.transfer(tom,200);}}三、JTA组件小结在上面JTA实现多数据源的事务管理使用方式还是相对简单通过两阶段的提交可以同时管理多个数据源的事务。但是暴露出的问题也非常明显就是比较严重的性能问题,由于同时操作多个数据源,如果其中一个数据源获取数据的时间过长,会导致整个请求都非常的长,事务时间太长,锁数据的时间就会太长自然就会导致低性能和低吞吐量。因此在实际开发过程中对性能要求比较高的系统很少使用JTA组件做事务管理。作为一个轻量级的分布式事务解决方案在小的系统中还是值得推荐尝试的。最后作为Java下的API原理和用法还是值得学习一下开阔眼界和思路。四、源代码地址到此这篇关于SpringBoot2整合JTA组件实现多数据源事务管理的文章就介绍到这了,更多相关SpringBoot2 JTA多数据源事务管理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家
http://www.huolong8.cn/news/27588/

相关文章:

  • 免费php企业网站管理系统那个网站开发三味
  • 头像网站模板免费注册跨境电商
  • 网站设计的总结百度流量推广项目
  • 同德县wap网站建设公司深圳物流公司查询大全
  • 外贸购物网站建设wordpress微信支付功能
  • 网站上的分享php网站建设价格
  • 网站开发系统源代码网站常见错误代码
  • 谈谈什么是网络营销织梦seo排名优化教程
  • 做非法网站怎么判刑设计工作室网站
  • 销售网站设计方案装企营销系统
  • 网站开发网页设计js郑州注册公司网上核名网站
  • 龙江做网站泰安企业网站建设公司
  • 建站模板安装视频教程全集wordpress字体加载慢
  • 电商网站建设概念乐平网站设计
  • 陕西有没有做网站好的公司wordpress内链插件
  • 企业网站建设方案新闻关键词挖掘工具爱网
  • 企业网站模板免费建设部的网站首页
  • 买表的网站农村电商做什么项目好
  • 韶山网站建设爱奇艺会员推广联盟
  • 国土局网站建设情况汇报外贸做哪些网站平台好
  • 平江外贸网站推广找哪家重庆360网络推广
  • 婚纱摄影类网站模板中国国建设监理协会网站
  • 招个网站建设维护采购招标网
  • 做网站卖产品投资大嘛购物网站怎么建立
  • php网站开发ppt实时视频网站怎么做
  • 自己设计好的网站怎么设置访问做外贸的人经常用什么网站
  • 手机商城网站模板个人备案经营网站备案
  • 鄞州区建网站外包租房网站开发需求文档
  • 网站开发会什么软件帮做ppt网站
  • 建设摩托车公司官方网站电子商务网站开发方式