Spring Boot:自定义注释在课堂上不起作用

时间:2021-02-26 04:46:29

标签: spring-boot

我正在尝试创建自定义注释来检查用户的权限。它适用于所有方法,但不适用于课堂

这是我放注释的地方

@IcodeAuthorize(permission="cdtadmAdvancedAdministratorr",attribute="{viewable:true,level:100}")
@RestController
public class FileController {
...
}

这是我的自定义方面类

@Component
@Aspect
public class IcodeAuthorizationAspect {
    
    @Autowired
    IcodeAuthorizationImpl authBean;
    
    @Before("execution(* *.*(..)) && @annotation(icodeAuthorized)")
    public void icodeAuthorized(JoinPoint joinPoint, IcodeAuthorize icodeAuthorized) {
        System.out.println("icodeAuthorized was called");
        Object[] args = joinPoint.getArgs();
        ExpressionParser elParser = new SpelExpressionParser();
        ...
        
    }
}

和注释

@Target(value = {ElementType.METHOD, ElementType.TYPE})
@Retention(value = RetentionPolicy.RUNTIME)
@Inherited
@Documented
public @interface IcodeAuthorize {
    
    public String permission() default "";
    
    public String attribute() default "";
}

就相关文档而言,ElementType.TYPE 将允许将注释应用于类。但我不明白为什么它不起作用。

还有别的办法吗? 提前致谢

0 个答案:

没有答案