swagger + springboot
参考文章: https://blog.csdn.net/xupeng874395012/article/details/68946676/
https://blog.csdn.net/hry2015/article/details/72353994/
Api
用在Controller中,标记一个Controller作为swagger的文档资源
| 属性名称 | 说明 |
|---|---|
|
value |
Controller的注解 |
| description | 对api资源的描述 |
| hidden | 配置为true 将在文档中隐藏 |
使用方法:
1 @Api(value = "登录服务",description = "用户登录相关接口")
2 @RestController("loginControllerLayui")
3 @RequestMapping("/login")
4 public class LoginController {
5 }
ApiOperation
该注解用在Controller的方法中,用于注解接口
| 属性名称 | 说明 |
|---|---|
| value | 接口的名称 |
| notes | 接口的注释 |
| response | 接口的返回类型,比如说:response = String.class |
| hidden | 配置为true 将在文档中隐藏 |
使用方法:
@ApiOperation(value = "获取验证码图片",notes = "每调用一次,就会随机生成一张验证码图片",response = String.class)
@GetMapping("/verifyCode.img")
public String getVerifyCode(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
}
ApiParam
该注解用在方法的参数中。
| 属性名称 | 说明 |
|---|---|
| name | 参数名称 |
| value | 参数值 |
| required | 是否必须,默认false |
| defaultValue | 参数默认值 |
| type | 参数类型 |
| hidden | 隐藏该参数 |
使用方法:

@ApiOperation(value = "添加权限",notes = "插入权限",response = JsonData.class)
@PostMapping("/insertAcl.json")
public JsonData insertAcl(@ApiParam(name = "param",value = "实体类AclParam",required = true) AclParam param){
}

ApiResponses/ApiResponse
该注解用在Controller的方法中,用于注解方法的返回状态。
| 属性名称 | 说明 |
|---|---|
| code | http的状态码 |
| message | 状态的描述信息 |
| response | 状态相应,默认响应类 Void |
使用方法:

@ApiOperation(value = "菜单",notes = "进入菜单界面",nickname = "菜单界面")
@ApiResponses({
@ApiResponse(code = 200,message = "成功!"),
@ApiResponse(code = 401,message = "未授权!"),
@ApiResponse(code = 404,message = "页面未找到!"),
@ApiResponse(code = 403,message = "出错了!")
})
@GetMapping("/aclModule.page")
public ModelAndView aclModule(Model model){
}

ApiModel
该注解用在实体类中。
| 属性名称 | 说明 |
|---|---|
| value | 实体类名称 |
| description | 实体类描述 |
| parent | 集成的父类,默认为Void.class |
| subTypes | 子类,默认为{} |
| reference | 依赖,默认为“” |
使用方法:
@ApiModel(value = "JsonData",description = "返回的数据类型")
public class JsonData {
}
ApiImplicitParams/ApiImplicitParam
该注解用在Controller的方法中,同ApiParam的作用相同,但是比较建议使用ApiParam。
| 属性名称 | 说明 |
|---|---|
| name | 参数名称 |
| value | 参数值 |
| defaultValue | 参数默认值 |
| required | 是否必须 |
| allowMultiple | 是否允许重复 |
| dataType | 数据类型 |
| paramType | 参数类型 |
使用方法:
@ApiOperation(value = "创建用户",notes = "根据User对象创建用户")
@ApiImplicitParam(name = "user",value = "用户详细实体user")
@RequestMapping(value="/", method=RequestMethod.POST)
public String postUser(@ModelAttribute User user){
}
ApiModelProperty
该注解用在实体类的字段中。
| 属性名称 | 说明 |
|---|---|
| name | 属性名称 |
| value | 属性值 |
| notes | 属性注释 |
| dataType | 数据类型,默认为“” |
| required | 是否必须,默认为false |
| hidden | 是否隐藏该字段,默认为false |
| readOnly | 是否只读,默认false |
| reference | 依赖,,默认“” |
| allowEmptyValue | 是否允许空值,默认为false |
| allowableValues | 允许值,默认为“” |
使用方法:

//返回状态信息
@ApiModelProperty(name = "code",value = "状态code",notes = "返回信息的状态")
private int code;
//返回携带的信息内容
@ApiModelProperty(name = "msg",value = "状态信息",notes = "返回信息的内容")
private String msg = "";
//返回信息的总条数
@ApiModelProperty(name = "count",value = "查询数量",notes = "返回信息的条数")
private int count;
//返回对象
@ApiModelProperty(name = "data",value = "查询数据",notes = "返回数据的内容")
private Object data;
swagger + springboot的更多相关文章
- 基于Swagger+SpringBoot快速构建javaweb项目
章节导航 SpringBoot&Swagger简介 数据模型和接口定义 项目框架生成 业务逻辑实现 项目源码地址 github项目路径:https://github.com/Vikezhu/s ...
- Swagger SpringBoot 集成
说明:Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法,参数和模型紧密集 ...
- Swagger+SpringBoot整理
maven依赖 1 <dependency> 2 <groupId>io.springfox</groupId> 3 <artifactId>sprin ...
- springboot整合swagger。完爆前后端调试
web接口开发时在调试阶段最麻烦的就是参数调试,前端需要咨询后端.后端有时候自己也不是很了解.这时候就会造成调试一次接口就需要看一次代码.Swagger帮我们解决对接的麻烦 springboot接入s ...
- SpringBoot系列之从入门到精通系列教程
对应SpringBoot系列博客专栏,例子代码,本博客不定时更新 Spring框架:作为JavaEE框架领域的一款重要的开源框架,在企业应用开发中有着很重要的作用,同时Spring框架及其子框架很多, ...
- 前端嫌弃原生Swagger界面太low,于是我给她开通了超级VIP
缘由 接口文档想必是许多开发小伙伴的噩梦,不仅要写详细,还要及时维护文档与后端代码保持一致,稍有没及时更新接口文档,前端同学肯定会抱怨后端同学给的文档与实际情况不一致. 于是,引入了Swagger组件 ...
- SpringBoot详解
1.Hello,World! 1.1.SpringBoot简介 回顾什么是Spring Spring是一个开源框架,2003 年兴起的一个轻量级的Java 开发框架,作者:Rod Johnson . ...
- Swagger-初见
目录 Swagger简介 SpringBoot集成Swagger 配置Swagger 配置扫描接口 配置Swagger开关 配置API分组 实体配置 常用注解 Swagger简介 前后端分离 前端 - ...
- 第四章 springboot + swagger(转载)
此篇博客转发自:http://www.cnblogs.com/java-zhao/p/5348113.html swagger用于定义API文档. 好处: 前后端分离开发 API文档非常明确 测试的时 ...
随机推荐
- 如何将maven项目打包成可执行的jar
如何将maven项目打包成可执行的jar 分类: maven2010-12-17 10:18 10411人阅读 评论(2) 收藏 举报 jarmavenassemblyjava 方法一:将项目及所依赖 ...
- Robots.txt在项目中的运用
在开发公司一个项目的过程中,有这样一个需求 该网站上面有一个search功能,可以search该网站上的任何包括特定内容的网页 现在有一个需求,就是针对几个特定的页面,我们希望网站上的search功能 ...
- js中将字符串转为JSON的三种方式
1.eval方式解析,恐怕这是最早的解析方式了.如下: function strToJson(str){ var json = eval('(' + str + ')'); return json; ...
- ADT-23.0.2百度网盘下载地址
最近 Google 被墙 http://download.csdn.net/download/wentai2009/7736389
- HN669打包工具--游戏对接
一. 将游戏工程拖入到工具的HN669Ploy目录下,如下图: 二. xCode打开游戏工程,将Core目录下的HN669SDKCore工程添加入游戏工程,并引用库,如图: 三.调用API 1.A ...
- lable对picbox透明
为了登录美观一些,就在窗体上加了个picbox.并且充满了整个窗体. 往上面放了几个lable,把lable属性设置Transparent.本想着lable不会有底色,实际上有个底,很难看. 解决办法 ...
- unity 查找游戏中隐藏的物体
在Hierarchy 有时会隐藏一些游戏物体,我们需要在游戏的时候将其激活状态变为true 我们发现通过 GameObject.Find("隐藏物体名字") 是查找不到隐藏对象的 ...
- [WIP]laravel 构成的概念
创建: 2019/06/21 生命周期 概论 检索service provider service container se ...
- CodeForces 104C【树特性】
题意: 判断这副图是否满足根是一个环的缩点,然后其余点都是一个点,满足树特性. 思路: 一开始就像无向图缩点乱搞,然后实在太烦搞不下去.... 一副图是满足结点和边数量相等,且连通,则一定有一个环. ...
- iOS通过SocketRocket实现websocket的即时聊天
之前公司的即时聊天用的是常轮循,一直都觉得很不科学,最近后台说配置好了socket服务器,我高兴地准备用asyncsocket,但是告诉我要用websocket,基于HTML5的,HTML5中提出了一 ...