spring AOP
2021-04-11 08:29
标签:好的 dep exe point http print ble 引用 www 导入AOP织入包 1.接口 2.实现类 3.添加日志 Log日志:MethodBeforeAdvice为前置通知,连接点为方法前 重写before方法 AfterLog日志:AfterReturningAdvice为后置通知,连接点为方法后 4.配置 创建applicationContext.xml配置文件 具体步骤:1.注册bean,注册接口的实现类和需要添加的Log日志方法,格式为: 2.配置aop,配置aop时需要导入aop约束 3.配置aop切入点,切入点为接口的实现类 4.配置环绕通知,环绕通知的ref为需要添加的Log日志 5.测试 1.首先添加配置好的applicationContext.xml配置文件 2.动态代理的是接口,配置文件获取的bean为接口的实现类的 1. 创建自定义类,定义方法 2. applicationContext.xml配置文件 注册bean为自定义类,自定义切面,ref引用的是注册的bean 创建切入点,切入点为接口的实现类 创建通知,通知使用的方法为自定义类定义的方法,切入点为aop创建的切入点 spring AOP 标签:好的 dep exe point http print ble 引用 www 原文地址:https://www.cnblogs.com/lxzlovewyq/p/13359992.html1. 什么是AOP
2. 导入依赖
1 dependency>
2 groupId>org.aspectjgroupId>
3 artifactId>aspectjweaverartifactId>
4 version>1.9.4version>
5 dependency>
3.spring AOP的简单实现(方法一:使用spring API接口)
1 public interface UserService {
2 public void add();
3 public void delete();
4 public void update();
5 public void select();
6 }
1 public class UserServiceImpl implements UserService {
2 public void add() {
3 System.out.println("执行了添加方法");
4 }
5
6 public void delete() {
7 System.out.println("执行了删除方法");
8 }
9
10 public void update() {
11 System.out.println("执行了更新方法");
12 }
13
14 public void select() {
15 System.out.println("执行了查询方法");
16 }
17 }
1 //method:要执行的目标对象的方法
2 //objects:参数 args
3 //o:目标对象 target
4 public class Log implements MethodBeforeAdvice {
5 public void before(Method method, Object[] objects, Object o) throws Throwable {
6 System.out.println(o.getClass().getName()+"方法");
7 }
8 }
1 //o:返回值
2 public class AfterLog implements AfterReturningAdvice {
3 public void afterReturning(Object o, Method method, Object[] objects, Object o1) throws Throwable {
4 System.out.println("执行的方法为"+method.getName()+"返回值为"+o);
5 }
6 }
1 2
1 public class MyTest {
2 public static void main(String[] args) {
3 ClassPathXmlApplicationContext Context = new ClassPathXmlApplicationContext("applicationContext.xml");
4 //动态代理的是接口
5 UserService userService =(UserService) Context.getBean("UserServiceImpl");
6 userService.add();
7 }
8 }
4. spring AOP的简单实现(方法二:使用自定义类)
1 public class DiyPiontCut {
2 public void before(){
3 System.out.println("执行了Before方法");
4 }
5 public void after(){
6 System.out.println("执行了after方法");
7 }
8 }
1
2
下一篇:HTM、CSS学习总结