@Target(value={METHOD,TYPE}) @Retention(value=RUNTIME) @Documented @RequestMapping public @interface ApiResource
目的是为了在使用Spring Mvc的基础之上,增加对接口权限的控制功能
| 限定符和类型 | 可选元素和说明 |
|---|---|
String |
appCode
此属性用在一个程序承载两个业务系统的情况下,标识这个资源所属的模块,用在控制器上
|
String |
code
资源编码唯一标识.
|
boolean |
menuFlag
是否是菜单(true-是菜单标识,false-不是菜单标识)
|
org.springframework.web.bind.annotation.RequestMethod[] |
method
请求的http方法(同RequestMapping)
|
String |
name
资源名称(必填项)
|
String[] |
path
请求路径(同RequestMapping)
|
String[] |
produces
同RequestMapping
|
boolean |
requiredLogin
需要登录(true-需要登录,false-不需要登录)
|
boolean |
requiredPermission
需要鉴权(true-需要鉴权,false-不需要鉴权)
|
ResBizTypeEnum |
resBizType
资源的类型,系统类还是业务类资源
|
boolean |
viewFlag
是否是视图类型:true-是,false-否
如果是视图类型,url需要以 '/view' 开头,
视图类型的接口会渲染出html界面,而不是json数据,
视图层一般会在前后端不分离项目出现
|
public abstract String code
资源编码唯一标识.
说明:
1.可不填写此注解属性.
2.若不填写,则默认生成的编码标识为: 控制器类名称 + 分隔符 + 方法名称.
3.若编码存在重复则系统启动异常
public abstract String appCode
此属性用在一个程序承载两个业务系统的情况下,标识这个资源所属的模块,用在控制器上
public abstract String name
public abstract boolean viewFlag
public abstract ResBizTypeEnum resBizType
@AliasFor(annotation=org.springframework.web.bind.annotation.RequestMapping.class) public abstract String[] path
@AliasFor(annotation=org.springframework.web.bind.annotation.RequestMapping.class) public abstract org.springframework.web.bind.annotation.RequestMethod[] method
@AliasFor(annotation=org.springframework.web.bind.annotation.RequestMapping.class) public abstract String[] produces
Copyright © 2022. All rights reserved.