1.场景还原
近期的项目中有很多地方要用到拦截器,比如权限管理,在访问该controller之前先进行对其拦截一把,如果满足权限要求则放行,不满足则抛出无权限异常。
2.实现方案
①定义一个权限访问接口
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AuthCode {
/**
* 1)纯操作码,如:query;
* @return
*/
String[] value() default {};
}
②在controller上面申明权限
/**
* 获取未维护记录的消息列表
*/
@AuthCode({"company.query","company.add"})
@RequestMapping(value = "/calculateKpi", produces = "application/json;charset=utf-8")
public String calculateKpi(){
LogUtil.info(logger, "获取未维护记录的消息列表=