01 静态代理

AOP即面向切面编程,是仅有几个不改变原来的代码,还能再原来代码执行前后加入一些其他逻辑的方式之一。实现AOP的方式有好几种,我们现在就看其中的第一个,静态代理。

1、操作步骤

  • 创建一个UserService.java接口
public interface StudentService {
    void query();
}
  • 创建一个UserServiceImpl.java实现类
public class StudentServiceImpl implements StudentService {
    @Override
    public void query() {
        System.out.println("查询");
    }
}
  • 创建一个UserServiceImplProxy.java实现类
public class StudentServiceImplProxy implements StudentService {
    public StudentService studentService;
    public StudentServiceImplProxy(StudentService studentService)
    {
        this.studentService = studentService;
    }
    @Override
    public void query() {
        System.out.println("权限");
        this.studentService.query();
    }
}
  • 创建一个测试类
public class TestStaticProxy{
  public static void main(String[] args)
  {
        StudentService studentService = new StudentServiceImpl();
        StudentService studentService1 = new StudentServiceImplProxy(studentService);
        studentService1.query();
  }
}

以上就是完成一个静态代理的过程。

你可能感兴趣的:(01 静态代理)