PersonDto中@ResourceAccess(readOnly = true)以及swagger的理解-----似懂非懂,日后消化
@JsonApiResource(type = PersonDto.RESOURCE_TYPE)
@EntityMapping(entityClass = Person.class)
//@ResourceAccess(readOnly = true)
@ApiResource(group = ApiResourceGroup.CONTACT_AND_ACTIVITY)
public class PersonDto extends PartyDto {
}
将@ResourceAccess(readOnly = true)注释掉,则,重新编译项目,访问ip/backstop/api-docs/index.html#!/_People,则发现,在people对应下,由原来只有get/post变成了get/post/delete/patch四种请求都有。

simon告诉我,这是基于反射的原理。具体内部如下:
web.xml:
<servlet>
<servlet-name>Jersey Katharsis Service</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>javax.ws.rs.Application</param-name>
<param-value>com.backstopsolutions.api.KatharsisApplication</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
kathasisApplication:
@Singleton
@ApplicationPath("/")
public class KatharsisApplication extends ResourceConfig {
public static final String API_PATH_PREFIX = "/backstop/api";
public static final String API_PACKAGE_NAME = "com.backstopsolutions.api";
public KatharsisApplication() {
property(KatharsisProperties.RESOURCE_SEARCH_PACKAGE, API_PACKAGE_NAME + ",io.katharsis");
property(KatharsisProperties.WEB_PATH_PREFIX, API_PATH_PREFIX);
register(BackstopContext.getInjector().getInstance(KatharsisDynamicFeature.class));
}
}
kathasisDynamicFeature:
@Override
public boolean configure(FeatureContext context) {
if (!super.configure(context)) {
return false;
}
// Swagger filter
context.register(injector.getInstance(ApiDocFilter.class));
// API usage filter
context.register(injector.getInstance(ApiUsageFilter.class));
// API version filter
context.register(injector.getInstance(ApiVersionFilter.class));
// Clean up
context.register(injector.getInstance(ApiContextCleanUpFilter.class));
apiContext.initialize();
return true;
}
ApiDocFilter:
和swagger关联,具体,内部怎么反射变成swagger调试工具,不是很懂。如有同事能解释清楚,望补充。
PersonDto中@ResourceAccess(readOnly = true)以及swagger的理解-----似懂非懂,日后消化的更多相关文章
- [转载]ASP.NET中TextBox控件设立ReadOnly="true"后台取不到值
原文地址:http://www.cnblogs.com/yxyht/archive/2013/03/02/2939883.html ASP.NET中TextBox控件设置ReadOnly=" ...
- .NET中TextBox控件设置ReadOnly=true后台取不到值的解决方法
在.NET 2.0 下,当页面上的某个TextBox 设置了属性ReadOnly="True"时,通过客户端脚本给其赋值后,在后台代码中访问其Text属性却无法获得该值.经过尝试, ...
- .NET中TextBox控件设置ReadOnly=true后台取不到值三种解决方法
当TextBox设置了ReadOnly=true后要是在前台为控件添加了值,后台是取不到的,值为空,多么郁闷的一个问题经过尝试,发现可以通过如下的方式解决这个问题.感兴趣的朋友可以了解下 当TextB ...
- .NET中TextBox控件设置ReadOnly=true后台取不到值 三种解决方法
方法一:不设置ReadOnly属性,通过onfocus=this.blur()来模拟,如下: <asp:TextBox ID="TextBox1" runat="s ...
- ASP.NET 中TextBox设置ReadOnly="true" 无法取到值的做法
当 TextBox设置了ReadOnly="true" 后,要是在前台为控件添加了值,后台是取不到的,值为“空” 原理没想通,说不清楚微软是出于什么考虑的,https://www. ...
- ASP.NET中TextBox控件设立ReadOnly="true"后台取不到值
SP.NET中TextBox控件设置ReadOnly="true"H或Enabled=false后台取不到值 当TextBox设置了ReadOnly="true" ...
- readonly=“readonly”与readonly=“true”
<input id="u" readonly /> <input id="u" readonly="readonly" / ...
- Spring boot中使用springfox来生成Swagger Specification小结
Rest接口对应Swagger Specification路径获取办法: 根据location的值获取api json描述文件 也许有同学会问,为什么搞的这么麻烦,api json描述文件不就是h ...
- Spring 注解@Transactional readOnly=true
引子 今天下班后,以前同事小胖问我Spring Service类中的注解@Transactional readOnly=true的作用.做为他眼中的高人,我自然要装下A-C.居然想都没有想就说是注解 ...
随机推荐
- Windows vs Linux:\r\n 与 \r
Linux 下文本文件的换行符为 \n Windows 下文本文件的换行符为 \r\n,占两个字节: \r:归位键(CR),ascii 码为 13 \n:换行键(LF),ascii 码位 10 也即单 ...
- SVN客户端与服务器端搭建
一.客户端安装 1.点击安装程序 2.修改svn安装位置 3.开始安装 4.安装完成 5.回到左面 右键出现svn检出 tortoiSVN 表示安装成功 二.SVN服务端安装 1.点击服务端安装 ...
- LeetCode Design Compressed String Iterator
原题链接在这里:https://leetcode.com/problems/design-compressed-string-iterator/description/ 题目: Design and ...
- ACM学习历程—HDU5666 Segment(数论)
http://acm.hdu.edu.cn/showproblem.php?pid=5666 这题的关键是q为质数,不妨设线段上点(x0, y0),则x0+y0=q. 那么直线方程则为y = y0/x ...
- Elasticsearch的过滤查询
声明:我使用的elasticsearch的版本是5.4.0,具体参考下面的链接 https://www.elastic.co/guide/en/elasticsearch/reference/5.4/ ...
- HDU4039(map应用)
The Social Network Time Limit: 3000/2000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Others)T ...
- Spark on yarn的两种模式 yarn-cluster 和 yarn-client
从深层次的含义讲,yarn-cluster和yarn-client模式的区别其实就是Application Master进程的区别,yarn-cluster模式下,driver运行在AM(Applic ...
- 转:MySQL Row Format(MySQL行格式详解)
MySQL Row Format(MySQL行格式详解) --转载自登博的博客
- 转:InnoDB Page Structure(InnoDB页面结构详解)
InnoDB Page Structure(InnoDB页面结构详解) 此转载自登博的博客,给大家分享.
- unittest添加测试用例方法
1. suite=unittest.TestLoader().loadTestsFromTestCase(changedTestHJ)unittest.TextTestRunner(verbosity ...