我正在尝试创建自定义注释来检查用户的权限。它适用于所有方法,但不适用于课堂
这是我放注释的地方
@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
将允许将注释应用于类。但我不明白为什么它不起作用。
还有别的办法吗? 提前致谢