首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Srping AOP 处置日志

2012-11-04 
Srping AOP 处理日志spring切面管理日志处理?java代码:public class LoggingAdvice implements MethodBefo

Srping AOP 处理日志

spring切面管理日志处理

?

java代码:

public class LoggingAdvice implements MethodBeforeAdvice,AfterReturningAdvice,ThrowsAdvice{
?private Log log = LogFactory.getLog(this.getClass().getName());?
?
?/**
?? *@param method? 调用的方法?? 获得方法名的方法method.getName()
?? *@param args? 调用方法的参数列表
?? *@param target 目标对象
?**/
?public void before(Method method, Object[] args, Object target)
???throws Throwable {
??log.debug("目标:---"+target.getClass());
??log.debug("方法开始执行:---"+method.getName());
??log.debug("参数:---"+eachArgs(args));??
?}

?public void afterReturning(Object returnVal, Method method, Object[] args,
???Object target) throws Throwable {
??log.debug("方法成功执行:---"+method.getName());
??log.debug("返回值:---"+returnVal+"\n");
??
??
?}
?
?public void afterThrowing(Method method, Object[] args, Object target, Exception e) {
??log.error("方法执行异常:---"+method.getName());
??log.error("异常信息:---"+e+"\n");???
??? }
?
?//遍历object数组
?public String eachArgs(Object[] args){
??StringBuilder sb=new StringBuilder();
??for(int i=0;i<args.length;i++){
???sb.append(args[i]).append("\t");
??}
??return sb.toString();
?}

spring配置:

<!-- 配置loggingAdvice -->??
?<bean id="log" />??
??<aop:advisor advice-ref="log" pointcut-ref="allManagerMethod" />
??<aop:advisor advice-ref="log" pointcut-ref="allActionMethod" />
?</aop:config>

热点排行