
春季AOP
五个通知: 通知前,通知后,返回通知,异常通知,环绕通知
首先,使用AOP配置环境:
以下软件包需要导入到项目中:
org.springframework.aop-3.1.1.RELEASE.jar ---- ---- Spring的面向方面的编程,提供AOP(面向方面的编程)实现
org.springframework.aspects-3.1.1.RELEASE.jar ---- ---- Spring提供了与AspectJ框架的集成
aopalliance.jar
aspectjweaver-1.7.4.jar
aspectjrt-1.7.4.jar

预通知:
例如:
创建一个新的配置文件applicationContext.xml:

创建一个日志记录类: CalculatorLogging.java

哪里

@Aspect批注将此类表示为方面
@Component注释指示该类也应该放在IOC容器中.
@Before注释表示此方法用作预通知,也就是说,它将在调用其签名中标识的特定方法之前进入此方法.
(“ execution(public int com.zjy.spring.aop.Calculator.add(int,..))”)表示所有公共返回值都是int类型,并且属于com.zjy.spring .aop包在类Calculator中的添加方法
其中,(int,...)表示此方法的第一个参数为int,..表示后续参数的数目为任意类型.
打印结果:

发布通知:
它与前端几乎相同.


@After注释表示此方法用作后通知,也就是说,在调用其签名中标识的特定方法之前spring aop 异常通知,它不会进入此方法.
退货通知:

@AfterReturning批注表示此方法用作返回通知,也就是说,只有在其签名中标识的特定方法被调用并返回之后,它才会进入该方法.
如果该方法的执行中有异常,则不会输入返回通知,但仍会输入pre和post值属性来指示已组装的类和方法
value属性代表组装的类和方法
返回意味着返回结果
并在方法参数中添加“对象结果”,变量名称必须与刚刚返回的名称一致!

异常通知:

@AfterThrowing批注表示此方法用作异常通知,也就是说,只有在其签名中标识的特定方法被调用并且发生异常之后,它才会进入该方法.
并在方法参数中添加“ Exception ex”,变量名称必须与刚刚抛出的名称一致!
value属性代表组装的类和方法
抛出表示返回的异常对象
周围的通知:

@Around注释表示此方法用作环绕声通知spring aop 异常通知,也就是说,其签名中标识的特定方法调用将进入此方法
环绕通知实际上等效于代理,您可以在其中编写前置,后置,异常或返回.
围绕通知的日志记录方法必须具有返回值,并且它将ProceedingJoinPoint pjoinpoint作为参数
pjoinpoint.proceed()表示执行其接受的方法并返回执行结果
注意: 此示例中使用的jar包和屏幕截图显示在文章结尾的附件中
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-148350-1.html
这是教育体制落后的具体体现
沙特支持的IS