CommonImportConfig.java 1.43 KB
Newer Older
xd's avatar
xd committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
package com.tanpu.community.config;


import com.tanpu.common.auth.LoginInterceptor;
import com.tanpu.common.error.GlobalExceptionHandler;
import com.tanpu.common.log.WebLogInterceptor;
import com.tanpu.common.uuid.UuidGenHelper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.aop.aspectj.AspectJExpressionPointcut;
import org.springframework.aop.support.DefaultPointcutAdvisor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import org.springframework.core.Ordered;

/**
 * 引入登录拦截、唯一id生成、日志记录、异常处理
 * created by xd on 2021/6/19
 */
@Slf4j
@Configuration
@Import({LoginInterceptor.class, UuidGenHelper.class, WebLogInterceptor.class, GlobalExceptionHandler.class})
public class CommonImportConfig {
    @Bean
    public DefaultPointcutAdvisor webLogAdvisor(WebLogInterceptor webLogInterceptor) {
        log.info("build webLogAdvisor");

        DefaultPointcutAdvisor webLogAdvisor = new DefaultPointcutAdvisor();
        webLogAdvisor.setOrder(Ordered.HIGHEST_PRECEDENCE);

        AspectJExpressionPointcut pointcut = new AspectJExpressionPointcut();
刘基明's avatar
刘基明 committed
32
        pointcut.setExpression("execution(* com.tanpu.community.controller.*Controller.*(..))");
xd's avatar
xd committed
33 34 35 36 37
        webLogAdvisor.setPointcut(pointcut);
        webLogAdvisor.setAdvice(webLogInterceptor);

        return webLogAdvisor;
    }
刘基明's avatar
刘基明 committed
38 39


xd's avatar
xd committed
40
}