`

关于 expression="execution(* com.xy.service.*.*(..))"

阅读更多

先来看看这个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..*.*(..))
分享到:
评论

相关推荐

    基于java的企业级应用开发:AspectJ开发.ppt

    基于XML的声明式AspectJ &lt;bean id="myAspect" class="com.itheima.aspectj.xml.MyAspect" /&gt; &lt;aop:config&gt; &lt;aop:aspect id="aspect" ref="myAspect"&gt; &lt;aop:pointcut expression="execution(* com.itheima.jdk.*.*(....

    Spring AOP配置源码

    &lt;aop:pointcut expression="execution(* com.spring.service..*(..))" id="pointCut"/&gt;声明一个切入点,注意execution表达式的写法 &lt;aop:before method="before" pointcut-ref="pointCut"/&gt; aop前置通知 ...

    Maven拆分代码.zip

    &lt;!--配置连接池--&gt; &lt;bean id="dataSource" class=... &lt;aop:pointcut id="pointcut" expression="execution(* com.itheima.service.impl.*.*(..))"/&gt; &lt;aop:advisor advice-ref="advice" pointcut-ref=

    struts2.3+hibernate3.6+spring3.1整合的纯xml配置的小项目

    expression="execution(* x.y.service.*Service.*(..))" /&gt; id="noTxServiceOperation" expression="execution(* x.y.service.ddl.DefaultDdlManager.*(..))" /&gt; pointcut-ref="defaultServiceOperation" ...

    SpringBoot AOP切面类三种写法(源代码)

    写法一: @Before("execution(* com.bjpowernode.springboot07.javabean.Man.eat(..))") 一、AOP开发 1.1 概述 1.2使用方法 1.3创建项目并添加maven依赖 1.4 创建Javabean测试类 1.5 创建切面 1.6 测试类 1.7 测试...

    JTA事务源码示例

    expression="execution(* *..servi1ce*..*(..))"/&gt; &lt;aop:advisor pointcut-ref="serviceOperation" advice-ref="txAdvice"/&gt; &lt;!-- 通知配置 --&gt; &lt;tx:advice id="txAdvice" transaction-manager="myJtaManager...

    hive-exec-*.jar包

    Missing Hive Execution Jar: /hive/hive1.2.1/lib/hive-exec-*.jar

    spring applicationContext 配置文件

    &lt;aop:pointcut id="allManagerMethodPdm" expression="execution(* com.ccc.pdm..*.*(..))"/&gt; &lt;aop:advisor pointcut-ref="allManagerMethodPdm" advice-ref="txAdvicePdm"/&gt; &lt;/aop:config&gt; &lt;!-- ibatis...

    SSH第7章上机.zip ACCP8.0

    &lt;aop:pointcut expression="execution(* com.direct.service.*.*(..))" id="transactionPointCut"/&gt; &lt;aop:advisor advice-ref="transactionAdvice" pointcut-ref="transactionPointCut"/&gt; spring和struts2的整合 ...

    LabVIEW.2009.v9.0.Desktop.Execution.Trace.Toolkit.ISO-TBE-keygen

    LabVIEW.2009.v9.0.Desktop.Execution.Trace.Toolkit.ISO-TBE-keygen

    springmvc-ibatis

    &lt;aop:pointcut expression="execution(* com.org.service.*.*(..))" id="bussinessService" /&gt; &lt;aop:advisor advice-ref="txAdvice" pointcut-ref="bussinessService"/&gt; &lt;!-- 配置那个类那个方法用到事务...

    Hardware_Accelerated_Execution_Manager.rar.rar

    Hardware_Accelerated_Execution_Manager.rar.rar

    ssh框架在application.xml中配置数据源所需jar

    &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!-- - Application context ... &lt;aop:advisor pointcut="execution(* com.longxian.drp.manager.*.*(..))" advice-ref="txAdvice"/&gt; &lt;/aop:config&gt; &lt;/beans&gt;

    springmvcmybatis

    &lt;property name="mapperLocations" value="classpath:mapping/*.xml"&gt; &lt;!-- DAO接口所在包名,Spring会自动查找其下的类 --&gt; &lt;bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"&gt; ...

    SpringMVC+Hibernate全注解整合

    &lt;aop:pointcut expression="execution(public * com.org.service.*.*(..))" id="bussinessService" /&gt; &lt;aop:advisor advice-ref="txAdvice" pointcut-ref="bussinessService" /&gt; &lt;!-- 配置那个类那个方法...

    带注释的Bootstrap.java

    //"${catalina.base}/lib/*.jar","${catalina.home}/lib","${catalina.home}/lib/*.jar" //读取common.loader String value = CatalinaProperties.getProperty(name + ".loader"); if ((value == null) || ...

    三大框架下分页源代码

    &lt;aop:pointcut id="allServiceMethod" expression="execution(* com.cstp.service.*.*(..))"/&gt; &lt;aop:advisor pointcut-ref="allServiceMethod" advice-ref="txAdvice"/&gt; &lt;!-- 新闻类型 --&gt; &lt;bean id=...

    SQLServerExecutionTimes

    SQL Server Execution Times: CPU time = 0 ms, elapsed time = 0 ms. SQL Server Execution Times: CPU time = 0 ms, elapsed time = 0 ms. SQL Server Execution Times: CPU time = 0 ms, elapsed time = ...

    SpringMVC-SSH全注解

    &lt;aop:pointcut expression="execution(public * com.org.core.service.*.*(..))" id="bussinessService" /&gt; &lt;aop:advisor advice-ref="txAdvice" pointcut-ref="bussinessService" /&gt; &lt;!-- 配置那个类...

    软件项目管理-Execution-V200.ppt

    软件项目管理-Execution-V200.ppt

Global site tag (gtag.js) - Google Analytics