美文网首页Java
Spring中注解方式Aop实现

Spring中注解方式Aop实现

作者: f6f54c35b57a | 来源:发表于2016-05-19 14:50 被阅读170次

在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。

1.首先需要自定义注解类#####
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE,ElementType.METHOD})
public @interface DynamicDataSourceAnnotation {
    //dataSource 自定义注解的参数
    String dataSource() default DataSourceContextHolder.DATA_SOURCE_A;
}
2.自定义aop切面类#####
@Aspect
@Component
@Order(1) 
public class DynamicDataSourceAspect {
    
    
    @Before("@annotation(top.suroot.base.aop.DynamicDataSourceAnnotation)") //前置通知
    public void testBefore(){
        
        System.out.println("方法执行前执行!");
    } 
    @After("@annotation(top.suroot.base.aop.DynamicDataSourceAnnotation)")   //后置通知
    public void testAfter(JoinPoint point){
        
        System.out.println("方法执行后执行!");
    }


}
3.在方法中使用注解#####
    @RequestMapping("annotation")
    @DynamicDataSourceAnnotation(dataSource = DataSourceContextHolder.DATA_SOURCE_B)
    public String myAnnotation(HttpServletRequest request,HttpServletResponse response){
        System.out.println("自定义注解");
        return "hello";
    }
4.在spring配置文件中配置好切入点的注解扫描#####
    <aop:config>
        <aop:pointcut id="transactionPointcut" expression="execution(* top.suroot.*.service..*Impl.*(..))" />
        <aop:advisor pointcut-ref="transactionPointcut" advice-ref="transactionAdvice" order="2"/>
    </aop:config>

相关文章

  • Spring_9 Spring基于AspectJ AOP 注解实

    Spring AOP 使用注解方式增强 配置spring.xml文件 在 spring.xml 中开启AOP注解。...

  • 向您图文并茂生动讲解Spring AOP 源码(1)

    前言 在Spring AOP - 注解方式使用介绍(长文详解)中,作者介绍了Spring AOP 注解方式的使用方...

  • Spring(二)

    Spring的Bean管理(注解方式) 导入包 在Spring的注解AOP中需要导入spring-aop的jar包...

  • web填坑-AOP

    AOP面向切面编程 利用Spring注解方式实现AOP功能 student.java StuInterceptor...

  • SpringAOP实现源码解读

    1、Spring AOP样例 简单介绍怎么样基于Spring实现AOP编程(注解方式在目标对象方法中织入通知方法)...

  • spring aop 汇总

    静态代理、动态代理和cglib代理 aop 使用 Spring AOP - 注解方式使用介绍spring aop ...

  • Spring基于AspectJ的AOP的开发

    AspectJ实现AOP,实现方式: ——注解方式 ——XML方式 AspectJ实现AOP的方式比传统的AOP方...

  • spring笔记-AspectJ(AOP)

    AspectJ主要使用注解的方式来实现AOP,Spring AOP偏重编程的方式 1.示例接口 2.定义切面 2....

  • Spring Boot - AOP

    Spring Boot中使用AOP无需任何配置,仅需添加AOP相关依赖就可以开始使用了。 以注解方式结合AOP实现...

  • spring03

    基于动态代理改造上限案例 掌握Spring AOP 基于配置文件方式 掌握Spring AOP 基于注解方式 重点...

网友评论

    本文标题:Spring中注解方式Aop实现

    本文链接:https://www.haomeiwen.com/subject/viqwrttx.html