log4j的使用

来源:互联网 发布:高达网络限定 编辑:程序博客网 时间:2024/06/05 01:55
package com.pagedemo.aspect;import org.aspectj.lang.JoinPoint;import org.aspectj.lang.annotation.*;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.stereotype.Component;import org.springframework.web.context.request.RequestContextHolder;import org.springframework.web.context.request.ServletRequestAttributes;import javax.servlet.http.HttpServletRequest;/** * 控制主体 */@Aspect@Component//将文件引入spring容器中public class HttpAspect {    private final static Logger logger = LoggerFactory.getLogger(HttpAspect.class);    @Pointcut("execution(public * com.pagedemo.Controller.UserController.userList(..))")    public void log(){}    @Before("log()")    public void dobefore(JoinPoint joinPoint){//        JoinPoint        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();        HttpServletRequest request = attributes.getRequest();//        url        logger.info("url={}",request.getRequestURI());//        method        logger.info("method={}",request.getMethod());//        ip        logger.info("ip={}",request.getRemoteAddr());//      类方法        logger.info("class_method-{}",joinPoint.getSignature().getDeclaringTypeName()+"."+joinPoint.getSignature().getDeclaringType());//        参数        logger.info("args={}",joinPoint.getArgs());    }    @After("log()")    public void doafter(){        logger.info("222222222222");    }//获取返回的内容    @AfterReturning(returning = "object",pointcut = "log()")    public void doafterReturning(Object object){        logger.info("response={}",object.toString());    }}
原创粉丝点击