pom.xml 添加 AOP 依赖#
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-aop</artifactId>
</dependency>
入口类添加@EnableAspectJAutoProxy注解开启AOP#
编写切面类#
@Aspect
@Component
public class AuthAspect {
    @Autowired
    HttpServletRequest request;
    @Autowired
    protected WaterStationService waterStationService;
    @Before("execution(* cn.agoodwater.admin.controller.*.*(..))")
    public void proceed(JoinPoint joinPoint) throws Throwable {
        System.out.println("进入切点");
        String remoteUser = request.getRemoteUser();
        if(StringUtils.isNotBlank(remoteUser) && !"admin".equalsIgnoreCase(remoteUser)){
            WaterStationBO ws = waterStationService.queryByManager(remoteUser);
            Object[] obj = joinPoint.getArgs();
            for (Object obj1 : obj) {
                if(!(obj1 instanceof HttpServletResponse)){
                    Method setWsIdMethod = null;
                    Class<?> aClass = obj1.getClass();
                    try {
                        setWsIdMethod = aClass.getDeclaredMethod("setWsId",Integer.class);
                    } catch (Exception e) {
                        //
                    }
                    if(setWsIdMethod!=null){
                        setWsIdMethod.invoke(obj1,ws.getId());
                    }
                }
            }
        }
    }
}