`

SpringAop 配置说明

    博客分类:
  • J2EE
 
阅读更多
  <!-- datasourceone 数据库事务管理切点   
       包含的方法:service包(或子包)下所有名字以 'Service' 结尾的类内所有的方法。  
       不包含的方法:x.y.service包下PublishService类的getResCategory(..)方法,  
       getEditorResList(..)方法,updateResbackrmd(..)方法  
  --> 
  <aop:pointcut id="txPointcut-datasourceone"   
    expression="execution(* x.y.service..*Service.*(..))   
      and !execution(* x.y.service.PublishService.getResCategory(..))   
      and !execution(* x.y.service.PublishService.getEditorResList(..))   
      and !execution(* x.y.service.PublishService.updateResbackrmd(..))"/> 


1,pointcut既可以定义在一个接口上面(表示实现该接口的类方法将被拦截),同时也可以定义在一个类上面(无接口的情
   况,需要强制使用cglib)。在接口上面定义pointcut时无需关心接口实现类的具体位置,只需要定义被拦截的接口及方
   法位置。

2,常见的情况:
x.y.service..*Service.*(..)
x.y.service —— 包“x.y.service”
x.y.service.. —— 包“x.y.service”及其子包例如:“x.y.service.abc”,“x.y.service.def”,“x.y.service.ghi”,“x.y.service.jkl”。。。
*Service —— 定义接口(或没有实现接口的类,需要使用cglib代理)表达式;所有以Service结尾的类或接口,注意不是所有以Service结尾的包名。
*(..) —— 定义方法名,方法参数表达式;任意方法的名称,任意方法参数。

com.xyz.service.*.*(..)
com.xyz.service —— 包“com.xyz.service”
*.*(..) —— 任意接口(或没有实现接口的类,需要使用cglib代理),任意方法,任意参数
在service包下定义的任意方法的执行。

com.xyz.service..*.*(..)
com.xyz.service —— 包“com.xyz.service”
com.xyz.service.. ——包“com.xyz.service”及其子包
*.*(..) —— 任意接口(或没有实现接口的类,需要使用cglib代理),任意方法,任意参数
分享到:
评论

相关推荐

    spring AOP配置的几种方式

    本文主要介绍几种常见的Spring AOP配置方式,并通过具体的示例来说明每种配置的特点。 #### 二、AOP配置所需基本元素 配置AOP时需要以下三个基本元素: 1. **Advice**:这是实际执行的代码,即我们所说的“切面”...

    小马哥讲 Spring AOP 编程思想 - API 线索图.pdf

    - **容器(1对1关联)**:此处可能指的是Spring IoC容器与AOP配置的一对一关联。 - **PointcutAdvisor(切点通知器)**:一个组合了Pointcut和Advice的接口,用于将切点和通知结合在一起。 - **...

    spring AOP注解的应用1

    4. **配置AOP**:在Spring配置文件中启用AOP支持,并将切面类注册为bean。 通过以上步骤,我们可以灵活地在不修改目标代码的情况下,为应用程序添加额外的功能,提高代码的可维护性和可重用性。Spring AOP注解的...

    spring aop例子

    `QQ五笔截图未命名.jpg`可能是开发者在编写或调试代码时的辅助说明图片,例如展示了AOP配置或者运行结果。 要创建一个Spring AOP的例子,我们首先需要定义一个切面类,它可能包含一个或多个通知方法。然后,我们...

    SpringAOP简单项目实现

    总结,这个"SpringAOP简单项目实现"涵盖了Spring AOP的基础知识,包括切面、通知、切入点的定义与配置,以及如何在实际项目中使用Maven进行构建和依赖管理。对于初学者来说,这是一个很好的实践案例,能够帮助他们...

    springAop.rar_AOP java_cglib_spring aop

    在提供的压缩包文件中,"www.pudn.com.txt"可能是下载来源的说明或者包含一些额外的信息,而"springAop"可能是一个包含Spring AOP示例代码的文件。对于学习和理解Spring AOP以及CGLIB的用法,分析这个文件的内容将...

    spring aop需要的jar包

    在实际使用Spring AOP时,你需要在项目中引入这些库,并配置Spring容器来识别和处理切面。这通常涉及以下步骤: 1. **编写切面(Aspect)**:切面是包含通知(Advice)的类,通知定义了在特定连接点(Join Point)...

    ssh2登陆+spring aop做拦截

    最后,对于提供的文件列表,readme.docx 可能包含了关于这个主题的详细说明或指南,而 Eqqq.zip 可能包含了示例代码或项目配置,用于展示如何将 SSH2 登录与 Spring AOP 结合使用。如果你需要进一步的帮助,可以查看...

    Spring中aop编程所需要的jar包

    在Spring框架中,AOP(面向切面编程)是一种强大的工具,它允许程序员定义横切关注点,如日志、事务管理、权限控制等,...理解这些组件的作用并正确配置它们,对于有效地利用Spring AOP实现代码解耦和模块化至关重要。

    hualinux spring 3.15:Spring AOP.pdf

    根据提供的文件内容,可以提取出以下知识点: ...文档中提到的实践示例,例如前置通知、后置通知、返回通知、异常通知和环绕通知的具体编码实现,都是通过具体的代码示例来说明如何在Spring中应用AspectJ进行AOP编程。

    第二章:Spring AOP 基础1

    - 使用`org.springframework.aop.framework.ProxyFactory`等接口来手动配置和创建包含通知的代理。 8. **动态代理**: - Spring AOP支持自动动态代理,根据需要创建代理实例。 9. **TargetSource替换**: - ...

    Spring之AOP介绍

    ### Spring之AOP介绍 #### 一、AOP概述 面向方面编程(Aspect-Oriented Programming,简称AOP)作为一种编程范式,旨在通过模块化的方式处理横切关注点(Cross-cutting Concerns)。传统的面向对象编程(OOP)虽然...

    SPRING_AOP_概念解析以及例子示范.docx

    我们可以创建一个`SleepHelper`类作为通知,实现`MethodBeforeAdvice`和`AfterReturningAdvice`接口,然后在Spring配置文件中定义切点和通知,并使用`ProxyFactoryBean`生成代理对象,使得每次调用`sleep`方法时,`...

    Spring AOP实战 记录日志 下载可以直接使用

    适用人群: 针对资深Java开发者、熟悉Spring AOP的专业人士,以及企业中从事Java后端开发的工作人员。也欢迎对AOP实战用法感兴趣的同学们加入。 使用场景及目标: 在生产环境中,通过巧妙的AOP机制,实现对日志的...

    AOP基础与配置说明

    基于AspectJ注解的AOP配置是Spring 2.5引入的新特性,它使得AOP的使用更加简洁直观。AspectJ提供了丰富的注解,如`@Aspect`定义切面,`@Before`、`@After`、`@Around`定义前置通知、后置通知和环绕通知,`@Pointcut`...

    Spring AOP 日志

    在Spring框架中,AOP(面向切面编程)是一种强大的工具,它允许我们在代码的关键点插入额外的行为,比如日志记录。本项目是关于如何利用Spring AOP来实现日志功能的一个实例。以下是对相关知识点的详细说明: 1. **...

    Spring中IOC/AOP的说明和例子

    在Spring框架中,IOC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)是两个核心的概念,它们极大地提高了软件开发的灵活性和可维护性。 **IOC(控制反转)**是Spring的核心...

    spring的aop代码

    下面我们将通过一个简单的例子来说明Spring AOP的使用: ```java // 定义切面类 @Aspect public class LoggingAspect { @Before("execution(* com.example.service.*.*(..))") public void logBefore(JoinPoint ...

    spring aop 实现源代码--xml and annotation(带lib包)

    在Spring1.2或之前的版本中,实现AOP的传统方式就是通过实现Spring的AOP API来定义Advice,并设置代理对象。Spring根据Adivce加入到业务流程的时机的不同,提供了四种不同的Advice:Before Advice、After Advice、...

    spring-aop-5.1.3.RELEASE-API文档-中英对照版.zip

    赠送jar包:spring-aop-5.1.3.RELEASE.jar; 赠送原API文档:spring-aop-5.1.3.RELEASE-javadoc.jar; 赠送源代码:spring-aop-5.1.3.RELEASE-sources.jar; 赠送Maven依赖信息文件:spring-aop-5.1.3.RELEASE.pom;...

Global site tag (gtag.js) - Google Analytics