spring五种通知类型
3. 通知类型 **
1) 前置通知
<aop:before>
在目标方法调用前执行。丌能阻止后续执行,除非抛异常
2) 后置通知
<aop:after-returning>
在目标方法调用后执行。目标方法正常结束才执行。
3) 最终通知
<aop:after>在目标方法调用后执行。目标方法正常戒异常都执行。
4) 异常通知
<aop:after-throwing>
在目标方法调用发生异常后执行。
5) 环绕通知
<aop:around>
在目标方法调用前和后执行。
这5种类型的通知,在内部调用时这样组织
try{
调用前置通知
环绕前置处理
调用目标对象方法
环绕后置处理
调用后置通知
}catch(Exception e){
调用异常通知
}finally{
调用最终通知
}
【案例2】使用通知类型 **
1) 使用工程spring2
2) 前置通知
a. 新建AopBean
#default use Logger log4j.rootLogger=INFO,stdout #tarena package use Logger log4j.logger.tarena=ERROR,file log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout log4j.appender.file=org.apache.log4j.FileAppender log4j.appender.file.File=D:\\error.log log4j.appender.file.layout=org.apache.log4j.SimpleLayout
如果写OFF,表示关闭其他的日志信息,只有tarena下的错误日志才记录。
(案例结束)