`
eastPoint
  • 浏览: 53424 次
  • 性别: Icon_minigender_1
  • 来自: 湖北武汉
社区版块
存档分类
最新评论

Declarative transaction demarcation

阅读更多
xml 代码
  1. <beans>  
  2.      ...   
  3.   
  4.    <bean id="myTxManager" class="org.springframework.orm.hibernate.HibernateTransactionManager">  
  5.      <property name="sessionFactory" ref="mySessionFactory"/>  
  6.    </bean>  
  7.   
  8.    <bean id="myTxInterceptor"  
  9.      class="org.springframework.transaction.interceptor.TransactionInterceptor">  
  10.      <property name="transactionManager" ref="myTxManager"/>  
  11.      <property name="transactionAttributeSource">  
  12.        <value>  
  13.          product.ProductService.increasePrice*=PROPAGATION_REQUIRED   
  14.          product.ProductService.someOtherBusinessMethod=PROPAGATION_MANDATORY  
  15.        </value>  
  16.      </property>  
  17.    </bean>  
  18.   
  19.    <bean id="myProductServiceTarget" class="product.ProductServiceImpl">  
  20.      <property name="productDao" ref="myProductDao"/>  
  21.    </bean>  
  22.   
  23.    <bean id="myProductService" class="org.springframework.aop.framework.ProxyFactoryBean">  
  24.      <property name="proxyInterfaces">  
  25.        <value>product.ProductService</value>  
  26.      </property>  
  27.      <property name="interceptorNames">  
  28.        <list>  
  29.          <value>myTxInterceptor</value>  
  30.          <value>myProductServiceTarget</value>  
  31.        </list>  
  32.      </property>  
  33.    </bean>  
  34.   
  35. </beans>  

 

java代码

  1. public class ProductServiceImpl implements ProductService {   
  2.   
  3.      private ProductDao productDao;   
  4.   
  5.      public void setProductDao(ProductDao productDao) {   
  6.          this.productDao = productDao;   
  7.      }   
  8.   
  9.      public void increasePriceOfAllProductsInCategory(final String category) {   
  10.          List productsToChange = this.productDAO.loadProductsByCategory(category);   
  11.          ...   
  12.      }   
  13.   
  14.      ...   
  15. }   
分享到:
评论

相关推荐

    spring-framework-reference4.1.4

    Not Using Commons Logging ................................................................... 12 Using SLF4J ..............................................................................................

    spring-framework-reference-4.1.2

    Not Using Commons Logging ................................................................... 12 Using SLF4J ..............................................................................................

    declarative

    Declarative Services(DS),在OSGi环境中,是一种声明式的方式来管理服务和组件的机制。它的核心思想是通过XML配置文件来定义服务的提供者和消费者,而不是通过代码直接引用和依赖其他服务,从而实现更加灵活和...

    Spring事务配置的五种方式[参照].pdf

    2. **基于AOP的声明式事务管理(Declarative Transaction Management via AOP)** 第二种方式与第一种类似,但所有Bean共享一个代理基类。这种方式下,你可以定义一个包含事务配置的抽象基类,然后让所有需要事务...

    WEB开发相关的Transaction管理战略

    3. **声明式事务(Declarative Transaction)模型**: - 特点:无需编写额外的代码来管理事务,而是通过配置(如XML或注解)指定事务边界。 - 实现:依赖于框架(如Spring)提供的事务管理功能。 - 应用场景:提高...

    spring-aop.jar

    這個jar檔包含在應用中使用Spring的AOP特性時所需的類。使用基於AOP的Spring特性,如聲明型事務管理(Declarative Transaction Management),也要在應用裡包含這個jar包。

    Pure Declarative Programming in Swift, Among Other Things.zip

    "Pure Declarative Programming in Swift, Among Other Things"这个主题深入探讨了如何在Swift中实现这一概念,以及它与其他编程范式的对比。 在Swift中,声明式编程主要体现在Swift的API设计上,比如Swift的数组和...

    Spring事务配置的五种方式

    4. **基于Java配置的声明式事务管理(Java-based Declarative Transaction Management)**: - 自Spring 3.0起,可以用Java配置代替XML配置,同样使用`@EnableTransactionManagement`开启事务管理,然后使用`@...

    spring-framework-reference 4.3.8.RELEASE

    Framework supports declarative transaction management, remote access to your logic through RMI or web services, and various options for persisting your data. It offers a full-featured MVC framework, ...

    declarative-parser-0.1.zip

    《声明式解析器:declarative-parser 0.1版本详解》 在当今的软件开发领域,解析器扮演着至关重要的角色,它们能够帮助我们处理和理解各种格式的数据,如XML、JSON、YAML等。开源项目"declarative-parser-0.1.zip...

    declarative-shadow-dom:自定义元素以声明方式创建Shadow DOM

    &lt;declarative&gt; 自定义元素以声明方式创建Shadow DOM 它应该与给出的建议紧密合作演示版安装使用安装组件:$ bower install declarative-shadow-dom --save 或 。用法如果需要,内置的导入自定义元素可扩展polyfill&...

    Spring.Essentials.178398

    Explore Spring's comprehensive transaction support for declarative Transaction Management and its integration with Spring's data access abstractions Investigate Spring Data access mechanisms with ...

    Declarative Chrome Extension-crx插件

    1.Declarative Inspector检查选定的DOM元素的声明性视图模型属性(动作,ctx,数据,dataProvider,i18n,消息,onEvent)。 请参见声明性检查器示例的屏幕截图。 2.Declarative Tracer跟踪关键声明事件的执行流程...

    python SQLAlchemy的Mapping与Declarative详解

    ### Python SQLAlchemy 的 Mapping 与 Declarative 详解 #### 一、引言 在 Python 开发领域中,SQLAlchemy 是一款强大的 ORM (Object Relational Mapper) 工具库,它为开发者提供了高级功能来实现 Python 类与...

    PyPI 官网下载 | django_declarative_apis-0.19.0-py3-none-any.whl

    **PyPI 官网下载 | django_declarative_apis-0.19.0-py3-none-any.whl** PyPI(Python Package Index)是Python社区的官方软件仓库,它为开发者提供了一个平台来发布、分享和安装Python库。在这个案例中,我们关注...

    Qt5Declarative_jll.jl

    Qt5Declarative_jll.jl (v5.15.2 + 0) 这是使用构造的自动生成的包。 原始的脚本可以在社区构建树上找到。 如果您有任何问题,请向Yggdrasil报告。 有关JLL软件包以及如何使用它们的更多详细信息,请参见...

    Learning GraphQL: Declarative Data Fetching for Modern Web Apps

    Why is GraphQL the most innovative technology for fetching data since Ajax? By providing a query language for your APIs and a runtime for fulfilling queries with your data, GraphQL presents a clear ...

    Declarative dependency management for Matlab.zip

    "Declarative dependency management for Matlab.zip" 提供了一种声明式的方式来解决这个问题,旨在简化和标准化Matlab项目的依赖管理过程。这个压缩包可能包含了一个名为`ToolboxToolbox-master`的主项目文件夹和一...

Global site tag (gtag.js) - Google Analytics