Java中增强代码的功能一般是通过接口和继承来实现代码的重写增强功能,而在spring中是通过AOP来增强代码的功能,且原代码不变。
1.创建一个接口和一个实现接口的类 (如图),其中代码功能随意,该代码主要是用来增强的
代码如下
package com.lin.spring.aopexample;
/**
* @author liuqunliang
* @date 2020/11/24 14:43
*/
public interface UserDao {
public int add(int a,int b);
public String updata(String id);
}
package com.lin.spring.aopexample;
/**
* @author liuqunliang
* @date 2020/11/24 14:45
*/
public class UserDaoImpl implements UserDao {
@Override
public int add(int a, int b) {
System.out.println("add方法执行了");
return a+b;
}
@Override
public String updata(String id) {
System.out.println("updata方法执行了 ");
return id;
}
}
2.创建一个类用来增强上面类中的方法(代码如下)
package com.lin.spring.aopexample;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.util.Arrays;
/**
* @author liuqunliang
* @date 2020/11/24 14:47
*/
public class JDKProxy {