首页 > 代码库 > Spring注入aspectJ切面
Spring注入aspectJ切面
1、用关键字aspect即可声明一个切面如:
切面定义完毕,可以发现,pointcut被当做一个类型,指定切点还是用execution表达式;after()和returning()也被当做一个类型来声明一个通知
2、在JudgeAspect中有一个CriticismEngine类型的成员变量,为了实现对象间的松耦合,我们在aspectJ中使用Spring的依赖注入来为JudgeAspect注入CriticismEngine对象。首先将CriticismEngine声明为bean,然后再将JudgeAspect声明为bean,注意在声明JudgeAspect bean时,要用如下格式:
要为bean指定一个factory_method来创建Aspect的bean。因为Aspect对象不是有Spring来创建的,而是由JVM在运行时创建的,等Spring容器能创建Aspectbean的时候,Aspect对象已经被实例化了,不用再创建新对象,而Aspect类中有一个静态的Aspectof()的方法,可以返回切面的一个单例,所以我们用高factory-method来代替JudgeAspect的构造方法。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。