> 文档中心 > Java中的AOP技术示例

Java中的AOP技术示例

Java中的AOP技术源于代理思想
是多实现的巧妙应用

A为接口
B,C为A的实现
则B,C将会同时继承A接口中的全部方法,并且可以拥有完全相同的方法,在重写的同时,可以将后实现的类中的方法进行增强,在未来的逻辑修改中避免不断修改源代码中的逻辑,造成错误或耦合。
A接口

public interface Services {    public void do01();    public void do02();}

A接口的实现B

public class ServicesImpl implements Services{    @Override    public void do01() { System.out.println("业务方法第1流程执行中..........");    }    @Override    public void do02() { System.out.println("业务方法第2流程执行中..........");    }}

A接口的实现C对实现B进行了修改和增强

import java.util.Date;public class ServiceProxy implements Services {    Services servicesTarget = new ServicesImpl();    @Override    public void do01() { System.out.println("业务方法1开始执行......  执行时间:"+new Date()); servicesTarget.do01();    }    @Override    public void do02() { System.out.println("业务方法2开始执行......  执行时间:"+new Date()); servicesTarget.do02();    }}

Test

public class AppTest {    @Test    public void test(){ ServiceProxy serviceProxy = new ServiceProxy(); serviceProxy.do01();serviceProxy.do02();    }}

此时可以将C作为B的代理对象进行切面的介入,又避免了对B的修改过程中对于原有逻辑的入侵和更改。