纯java aspect注解怎么运行
具体方法如下,自行观看。
1 示例仍然使用上一节的"骑士和剑士"的例子,目标类Horseman和Swordman[java] view plain copy print?public class Horseman { public void rush(String enemy) { System.out.println(this.getClass().getSimpleName() + "冲刺攻击" + enemy); } public void chop(String enemy) { System.out.println(this.getClass().getSimpleName() + "砍劈攻击" + enemy); } } [java] view plain copy print?public class Swordman { public void block(String enemy) { System.out.println(this.getClass().getSimpleName() + "格挡" + enemy); } public void chop(String enemy) { System.out.println(this.getClass().getSimpleName() + "砍劈攻击" + enemy); } } 2 注解说明2.1 @Aspect作用是把当前类标识为一个切面供容器读取2.2 @Before标识一个前置增强方法,相当于BeforeAdvice的功能,相似功能的还有2.3 @AfterReturning后置增强,相当于AfterReturningAdvice,方法正常退出时执行2.4 @AfterThrowing异常抛出增强,相当于ThrowsAdvice2.5 @Afterfinal增强,不管是抛出异常或者正常退出都会执行2.6 @Around环绕增强,相当于MethodInterceptor2.7 @DeclareParents引介增强,相当于IntroductionInterceptor3 execution切点函数execution函数用于匹配方法执行的连接点,语法为:execution(方法修饰符(可选) 返回类型 方法名 参数 异常模式(可选))