Spring AOP 对(增删改)操作记录日志

以下程序记录增删改操作
1.目标类LoginService.java

 

public class LogService {

    @SuppressWarnings("unchecked")
    public void logOption(JoinPoint jp) {
        StringBuilder str = new StringBuilder();
        str.append("method:" + jp.getSignature().getName() + "\n");

        HttpServletRequest request = ServletActionContext.getRequest();
        Iterator> it = request.getParameterMap()
                .entrySet().iterator();
        boolean isFirst = true;
        str.append(" param:");
        while (it.hasNext()) {
            Entry entry = it.next();
            if (isFirst) {
                isFirst = false;
            } else {
                str.append(";");
            }
            str.append(entry.getKey() + "=");
            Object[] allValue = (Object[]) entry.getValue();
            for (int i = 0; i < allValue.length; i++) {
                if (i != 0) {
                    str.append(",");
                }
                str.append(allValue[i].toString());
            }
        }

        System.out.println(str.toString());
    }
}

2.在applicationContext.xml进行配置

 



    
       

     
        
                     
                expression="execution(* com.iteye.blog.service.*.save*(..))||execution(* com.iteye.blog.service.*.delete*(..))||com.iteye.blog.service.*.update*(..))"
                id="logPointCut" />
            
        
    

 注意:建议使用,使用CGLIB代理类

 

你可能感兴趣的:(Spring AOP 对(增删改)操作记录日志)