Welcome 微信登录

首页 / 软件开发 / JAVA / Spring 1.2和2.0的简单AOP例子

Spring 1.2和2.0的简单AOP例子2011-09-1410.3 开发Spring 1.2 AOP应用

本节将会给大家展示一个恐怖的例子,FBI特务人员已经介入了您的生活,您所做的一切都在他们的监视之中,包括聊QQ,泡MM,这在现实生活中是真实存在的,为了民众的安全和稳定,对嫌疑犯进行必要的监控是必要的。

注意:本章虽然介绍了多种AOP实现方式,然而,在实际项目中只要使用一种就可以达到目的了(因为Spring的AOP存在多种写法,完全掌握还是挺复杂),其它方式仅供参考,千万不要像孔乙己一样,研究“茴”字的N种写法,这样就脱离了学习技术的初衷了:学习是为了解决问题,不是为了炫耀自己。另外,如果在项目中滥用AOP的后果就是系统的执行效率大大降低,甚至配置不当会导致死循环。记住一个真理:系统越复杂,效率越低,出故障的可能越大。另外一条建议:千万不要用AOP在服务器上记录日志,或者在服务器上打印不必要的调试信息,那样对系统只能有害无益,日志输出是单线程操作,切记。做项目,一般来说是功能越少越好。高手更多的时候只能做出破坏力大,不易维护的垃圾系统。

10.3.1 开发Man对象

这个项目非常简单,仿照上节内容,创建项目并添加Spring开发功能,不同的是添加library的时候要把Spring 2.0 AOP Libraries加入进来。因为Spring 2.0的类库是兼容1.2的,所以这里就用2.0了。项目名为Spring1_2AOP。接下来我们要创建一个自由人的对象,他有聊QQ和泡MM这两个方法,还有一个姓名属性。好了,先建立这个类:

  /**  * 具有聊QQ和泡MM两个行为的人对象,还有一个用户名属性。* @author BeanSoft*/public class Man {  private String name;    public String getName() {     return name;    }    public void setName(String name) {     this.name = name;    }      public void qq() {     System.out.println("我在聊QQ");    }      public void mm() {     System.out.println("我在泡MM");    }  }
清单10.6 Man类源码