开发者社区> it徐胖子> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Spring事务管理—aop:pointcut expression解析

简介:
+关注继续查看

 

先来看看这个spring的配置文件的配置:

 

  <!-- 事务管理器 -->
 <bean id="transactionManager"
  class="org.springframework.orm.hibernate3.HibernateTransactionManager">
  <property name="sessionFactory" ref="sessionFactory" />
 </bean>


 <!-- 配置事务的传播特性 -->
 <tx:advice id="txAdvice" transaction-manager="transactionManager">
  <tx:attributes>
   <tx:method name="get*" propagation="REQUIRED" read-only="true" />
   <tx:method name="del*" propagation="REQUIRED" />
   <tx:method name="save*" propagation="REQUIRED" />
   <tx:method name="update*" propagation="REQUIRED" />
  </tx:attributes>
 </tx:advice>


 <!-- 配置事务拦截器拦截哪些类的哪些方法,一般设置成拦截Service -->
 <aop:config>
  <aop:pointcut expression="execution(* com.xy.service.*.*(..))"
   id="allDaoMethod" />
  <aop:advisor advice-ref="txAdvice" pointcut-ref="allDaoMethod" />
 </aop:config>


表示com.xy.service包下的所有方法为为事务管理。

 

execution(* com.aptech.jb.epet.dao.hibimpl.*.*(..)) 

 

这样写应该就可以了 这是com.aptech.jb.epet.dao.hibimpl 包下所有的类的所有方法。。

第一个*代表所有的返回值类型 

第二个*代表所有的类

第三个*代表类所有方法 最后一个..代表所有的参数。

 

 

下面给出一些常见切入点表达式的例子:

  • 任意公共方法的执行:

    execution(public * *(..))
    
  • 任何一个以“set”开始的方法的执行:

    execution(* set*(..))
    
  • AccountService 接口的任意方法的执行:

    execution(* com.xyz.service.AccountService.*(..))
    
  • 定义在service包里的任意方法的执行:

    execution(* com.xyz.service.*.*(..))
    
  • 定义在service包或者子包里的任意类的任意方法的执行:

    execution(* com.xyz.service..*.*(..))
    
 
原帖地址:http://hane00.blog.163.com/blog/static/160061522011427473965/

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Spring的事务管理实现原理初探
这里主要是通过分析部分源码进行剖析Spring事务管理的实现原理。 再分析源码前,现从理论上大概分析哈: 纯JDBC操作数据库的基本步骤: 1.
1314 0
启动Spring Boot时,如果不设置内存参数会如何?
启动Spring Boot时,如果不设置内存参数会如何?
156 0
别用ifelse了,手把手教在 Spring Boot中进行参数校验?
别用ifelse了,手把手教在 Spring Boot中进行参数校验?
47 0
Spring Boot集成Redis的坑,踩了!
Spring Boot集成Redis的坑,踩了!
127 0
Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情(上)
总结 使用Spring Initializr快速创建应用 应用组成分析 开发三部曲 Actuator 配置管理 Profile
176 0
Spring Cloud Alibaba 实战(2) - 关于Spring Boot你不可不知道的实情(下)
总结 使用Spring Initializr快速创建应用 应用组成分析 开发三部曲 Actuator 配置管理 Profile
92 0
Spring Boot整合Shiro,两种方式实战总结(含源码)
Spring Boot整合Shiro,两种方式实战总结(含源码)
94 0
Spring Boot 2.x基础教程:使用LDAP来管理用户与组织数据
Spring Boot 2.x基础教程:使用LDAP来管理用户与组织数据
234 0
+关注
it徐胖子
IT徐胖子
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Java Spring Boot开发实战系列课程【第7讲】:Spring Boot 2.0安全机制与MVC身份验证实战(Java面试题)
立即下载
Java Spring Boot开发实战系列课程【第6讲】:Spring Boot 2.0实战MyBatis与优化(Java面试题)
立即下载
Spring框架入门
立即下载