Spring AOP实践
2023-09-11 14:14:40 时间
Spring AOP和AspectJ是AOP的两种不同实现。前者是动态代理,后者是静态代理。
AOP的作用就是分离关注点,它将与业务无关的逻辑抽离出来单独封装成模块,实现核心业务与通用的逻辑的解耦。
首先,有几个概念需要了解一下:
- aspect(方面):简单的理解,将公共的逻辑剥离出来并封装成模块,这个模块就是aspect,可以理解成就是一个功能,比如:事务就是一个功能
- joinpoint(连接点):在Spring AOP中连接点就是一个方法
- advice(通知):在特定的连接点所采取的动作
- pointcut(切入点):可以这样理解,切入点就是指明哪些方法调用需要应用通知
- target object(目标对象):实际调用的方法
为了方便理解,我们这样想:aspect就是我们要实现的功能,那么这个功能所要做的事情就是advice,这些功能应用到哪些地方就是pointcut。
在Spring AOP中,定义一个AOP功能只需要三步:
1、声明aspect
2、定义joinpoint
3、定义advice
下面的示例采用了两种方式来实现一个AOP功能
工程结构如下
依赖的jar如下
第一种:基于@AspectJ注解的方式
第二种:基于XML配置文件的方式
相关文章
- JavaWeb_(Spring框架)认识Spring中的aop
- spring-cloud微服务架构图
- 【Spring Boot】Spring Boot之跨域解决方案
- spring cloud: 关闭ribbon负载均衡
- 利用Spring AOP自定义注解解决日志和签名校验
- 18-spring学习-利用Annotation配置AOP
- 17-spring学习-AOP初步实现
- spring中ContextLoaderListener和DispatcherServlet区别 ApplicationContext
- Spring AOP编程-传统aop开发总结
- Spring Boot:定制拦截器
- Spring读源码系列之AOP--02---aop基本概念扫盲---下
- Spring读源码系列之AOP--01---aop基本概念扫盲---上
- Spring读源码系列之AOP--09---aop源码流程一把拿下
- Spring读源码系列之AOP--08--aop执行完整源码流程之自动代理创建器导入的两种方式
- Spring AOP的最佳实践
- Atitit aop的一些资料 目录 2. AOP(面向切面)1 2.1. 切面(Aspect):其实就是共有功能的实现。如日志切面、权限切面、事务切面等2 2.2. 通知(Advice
- Atitit SpringCache缓存使用 艾提拉 attilax总结 1. Spring的抽象已经做得够好了,适合于大多数场景,非常复杂的就需要自己AOP实现了。1 1.1. 设置配置文件支持
- 为什么Spring Boot推荐使用logback-spring.xml来替代logback.xml来配置logback日志的问题分析
- Mongodb3.0.5副本集搭建及spring和java连接副本集配置
- Spring AOP里面的几个名词的概念:
- Spring AOP
- Spring AOP深入理解之拦截器调用
- Spring事务管理—aop:pointcut expression解析
- Spring相框:AOP详细说明
- Spring注解式AOP面向切面编程.
- 005-spring cache-原理、缓存AOP机制、Spring Cache抽象集成机制、springboot自动配置机制
- Spring JDBC处理CLOB类型字段