SpringBoot中AOP的配置
2016-12-16 18:23
483 查看
摘要: 网上大量关于SpringBoot中配置AOP的文章,尝试下来都无效,经查阅官方文档完成了
面向切面编程算是spring中的高阶应用,常见的日志采集,支付网关功能都有面向切面的工程思想,它就相当于进入地铁站时,那个等待我们的刷卡机一样,所有人乘地铁里必须经过刷卡机,它会验证你卡里的钱够不够,普通用户卡里钱不够不让过,地铁工作人员的员工卡随意过。
面向切面编程时也存在这道门,就是所谓的关注点(pointcut又称切入点,我习惯称之为关注点),类似于上面的刷卡机,有了这关注点,我们就可以围绕这个关注点做一些我们想做的事情,执行一些验证操作,类似于上面的判断用户身份,卡内金额,执行的动作可以放在关注点的某个时机去做,如@Around @Before @After,下面就详细列举一下AOP的配置方式
1.添加aop依赖
2.添加依赖之后,要开启AOP
3.开始写代码进行切面编程
上面就是最简洁的AOP案例了,学会使用之后,体会一下整个注解的流程
工程包:https://github.com/Freshman585/spring-boot-example
面向切面编程算是spring中的高阶应用,常见的日志采集,支付网关功能都有面向切面的工程思想,它就相当于进入地铁站时,那个等待我们的刷卡机一样,所有人乘地铁里必须经过刷卡机,它会验证你卡里的钱够不够,普通用户卡里钱不够不让过,地铁工作人员的员工卡随意过。
面向切面编程时也存在这道门,就是所谓的关注点(pointcut又称切入点,我习惯称之为关注点),类似于上面的刷卡机,有了这关注点,我们就可以围绕这个关注点做一些我们想做的事情,执行一些验证操作,类似于上面的判断用户身份,卡内金额,执行的动作可以放在关注点的某个时机去做,如@Around @Before @After,下面就详细列举一下AOP的配置方式
1.添加aop依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency>
2.添加依赖之后,要开启AOP
@EnableAutoConfiguration @EnableAspectJAutoProxy @ComponentScan(basePackages = "org.sun.spring") /*** *EnableAspectJAutoProxy开启切面编程 *ComponentScan指定包之后,SpringBoot会自动扫描该包下面的功能,如Controller,Model,Aspect功能 *org.sun.spring是我的包名,各位看客自行修改成自己的package name */ public class Bootstrap { public static void main(String[] args) { SpringApplication.run(new Object[] {Bootstrap.class}, args); } }
3.开始写代码进行切面编程
package org.sun.spring.aspect; import org.apache.log4j.Logger; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.aspectj.lang.annotation.Pointcut; import org.springframework.stereotype.Component; @Aspect @Component public class RequestLogAop { private final Logger logger = Logger.getLogger(getClass()); @Pointcut("execution( * org.sun.spring.controller.*.*(..))") public void pointCutAt() { } @Before("pointCutAt()") public void beforeAction() { logger.fatal("在处理请求前,必须经过我!!!"); } }
上面就是最简洁的AOP案例了,学会使用之后,体会一下整个注解的流程
工程包:https://github.com/Freshman585/spring-boot-example
相关文章推荐
- SpringBoot环境下配置AOP切面实现权限拦截
- Spring-boot 配置Aop获取controller里的request中的参数以及其返回值
- Springboot配置aop
- SpringBoot中AOP的配置
- 在SpringBoot中配置aop
- Spring boot + MySQl + druid + JPA + AOP pom文件 以及 application.yml 的配置
- Spring-boot 配置Aop获取controller里的request中的参数以及其返回值
- springboot之AOP配置
- springboot 配置AOP
- 关于springboot 配置文件、Aop配置以及jdbc配置
- springboot配置aop切面详解
- Springboot+Mybatis+Pagehelper+Aop动态配置Oracle、Mysql数据源
- SpringBoot中AOP的配置
- Spring boot 集成 aop 配置
- Spring-boot 配置Aop获取controller里的request中的参数以及其返回值
- SpringBoot配置Aop笔记
- 用Spring配置文件或者注解方式实现AOP
- 使用Spring AOP 自动代理配置声明式事务
- [原]spring学习笔记9.3-Spring对Aop的支持-配置文件的方式
- 使用 来配置Spring AOP