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

恒辉建设集团网站网站前瞻性_新流量机会内容建设分析

恒辉建设集团网站,网站前瞻性_新流量机会内容建设分析,全国小微企业名录查询官网,设计师家园官网Transactional 1. 介绍 Transactional 是 Spring 框架提供的一个注解#xff0c;用于声明方法或类级别的事务属性。 Spring事务#xff1a;Spring学习笔记_28——事务-CSDN博客 当你在一个方法或类上使用 Transactional 注解时#xff0c;Spring 会为该方法或类创建一个…Transactional 1. 介绍 Transactional 是 Spring 框架提供的一个注解用于声明方法或类级别的事务属性。 Spring事务Spring学习笔记_28——事务-CSDN博客 当你在一个方法或类上使用 Transactional 注解时Spring 会为该方法或类创建一个事务代理以确保方法的执行是在事务的上下文中进行的。 2. 场景 Transactional注解在 Spring 框架中被广泛用于需要事务管理的业务场景。以下是一些常见的业务场景其中Transactional注解的使用是非常合适的 数据一致性保证 在涉及多个数据库操作需要保证这些操作要么全部成功要么全部失败的场景中使用 Transactional 可以确保数据的一致性。并发事务处理 当多个用户或服务同时对同一数据进行操作时使用 Transactional 可以防止数据竞争条件和不一致性。资金交易 在电子商务或金融应用中资金转账、支付处理等场景需要精确的事务控制以确保资金的正确流动。库存管理 在订单处理系统中库存的增减需要在事务控制下进行以避免超卖或库存不一致的问题。用户注册和登录 用户注册时创建用户记录和相关配置信息或者登录时更新用户状态这些操作需要在事务控制下确保数据的一致性。数据批量处理 在处理批量数据导入或导出时需要确保所有数据项都成功处理或者在遇到错误时回滚以保持数据的完整性。复合操作 当需要执行一系列复合操作如更新多个相关联的表或记录时使用 Transactional 可以确保这些操作作为一个整体被处理。错误恢复 在业务操作中如果遇到异常需要回滚到操作前的状态Transactional 可以自动处理这种回滚。缓存与数据库同步 当更新数据库的同时需要更新缓存以保持缓存数据的一致性Transactional 可以确保数据库和缓存的更新操作要么同时成功要么同时失败。分布式事务 在微服务架构中跨服务的数据操作可能需要分布式事务来保证数据的一致性。异步消息处理 在处理消息队列中的消息时可能需要确保消息的发送和数据库操作的一致性。服务层方法 在服务层封装业务逻辑时如果业务逻辑涉及到多个数据访问操作使用 Transactional 可以简化事务管理。补偿事务 在需要执行补偿操作的场景中如果一个操作失败需要执行另一个操作来补偿Transactional 可以确保这两个操作的一致性。 3. 源码 /*** author Colin Sampaleanu* author Juergen Hoeller* author Sam Brannen* author Mark Paluch* since 1.2* see org.springframework.transaction.interceptor.TransactionAttribute* see org.springframework.transaction.interceptor.DefaultTransactionAttribute* see org.springframework.transaction.interceptor.RuleBasedTransactionAttribute*/ Target({ElementType.TYPE, ElementType.METHOD}) Retention(RetentionPolicy.RUNTIME) Inherited Documented Reflective public interface Transactional {// String类型用以指定事务管理器的唯一标识AliasFor(transactionManager)String value() default ;/*** since 4.2*/// 用以指定事务管理器的唯一标识AliasFor(value)String transactionManager() default ;/*** since 5.3*/// 设置属性的标签String[] label() default {};// Propagation枚举类型的属性指定事务的隔离级别Propagation propagation() default Propagation.REQUIRED;// isolation枚举类型的属性指定事务隔离的级别Isolation isolation() default Isolation.DEFAULT;// timeout指定事务的超时时间单位为秒当事务执行时间超过timeout秒时就会触发超时回滚操作并释放事务占用的资源int timeout() default TransactionDefinition.TIMEOUT_DEFAULT;/*** since 5.3*/// 以String类型设置超时时间单位为秒String timeoutString() default ;// 指定是否为只读事务// ture只读// false非只读boolean readOnly() default false;// 指定异常类的Class对象当抛出指定类型异常或者其子类型的异常时事务会自动回滚Class? extends Throwable[] rollbackFor() default {};// 指定异常类的全类名当抛出指定全类名的异常或者其子类型的异常时事务自动回滚String[] rollbackForClassName() default {};// 指定异常类的class对象当抛出指定类型的异常或者其子类型的异常时事务不会自动回滚Class? extends Throwable[] noRollbackFor() default {};// 指定异常类的全类名当抛出指定全类名的异常或者其子类型的异常时事务不会自动回滚String[] noRollbackForClassName() default {}; }4. Demo 不同传播行为 Transactional(propagation Propagation.REQUIRED) public void updateProductStock(Long productId, int quantity) {// 业务逻辑更新产品库存 } 不同隔离级别 Transactional(isolation Isolation.READ_COMMITTED) public void processOrder(Long orderId) {// 以 READ_COMMITTED 隔离级别执行的业务逻辑 } 超时时间 Transactional(timeout 5) // 超时时间设置为5秒 public void longRunningProcess() {// 长时间运行的业务逻辑 } 只读事务 Transactional(readOnly true) public ListProduct getAllProducts() {// 只读事务用于查询所有产品的列表 } 设置回滚异常 Transactional(rollbackFor Exception.class) // 默认所有异常都会触发回滚 public void processWithCustomRollback(Long productId) {// 如果抛出Exception类型的异常事务将回滚 }Transactional(noRollbackFor ArithmeticException.class) public void processWithNoRollback(Long productId) {// 如果抛出ArithmeticException类型的异常事务不会回滚 } 组合应用 Transactional(propagation Propagation.REQUIRES_NEW, isolation Isolation.SERIALIZABLE, timeout 10, readOnly false, rollbackFor Exception.class) public void complexBusinessProcess(Long productId, int quantity) {// 组合使用不同的Transactional参数// 这个操作将在一个新的事务中执行具有SERIALIZABLE隔离级别超时时间为10秒非只读事务并且所有异常都会触发回滚 }
http://www.hkea.cn/news/14279045/

相关文章:

  • 广西贺州建设局网站哪里有免费的h5模板
  • 建筑模拟3正版下载河北百度seo软件
  • wordpress网站添加背景音乐橙色网站模板
  • 一流的医疗网站建设站长之家模板
  • 中国最好网站建设公司广州微信网站建设费用
  • 网站建设标准一辽宁seo
  • 网站建设合同封面模板下载蓝色大气企业网站
  • 泉山微网站开发wordpress 基础主题
  • 济南网站建设网站常州市建设工程管理中心网站
  • 网站开发能作为无形资产吗推动高质量发展心得体会
  • 桐城住房和城乡建设局网站3秒钟自动跳转网页
  • 上海住房和城乡建设部网站首页免费空间贴吧
  • 网站建设讨论会直接做的视频网站
  • 淘宝做网站的店微信制作小程序的软件
  • 网站开发网上宠物店管理系统福建设计网站
  • 网站建设的介绍信息流推广
  • 网站开发网站设计的标准绿色环保网站模板
  • 免费分站网站互联网专业
  • 重庆建设工程证照查询网站宁波模板网页制作
  • 中国免费网站服务器下载局机关门户网站建设情况汇报
  • 做网站还有前景吗什么是ui界面
  • 做化工哪个网站好页面跳转代码
  • 凡科网做网站收费吗舆情优化
  • 3.建设营销型网站流程.服务器搭建网站
  • 做网站开发学什么工业设计公司怎么接活
  • 盐城专业做网站中山免费企业网站建设
  • 合肥网站建设方案优化网站建设的相应技术
  • 网站建设费用预算毕节市生态文明建设网站
  • 做网站简单需要什么软件越秀网站建设哪家好
  • 网站开发培训视频wordpress4.7更新说明