
默认的swagger-ui好用但是不够美观,为了让生成的文档更加可观,我们可以使用swagger-ui-layer 来美化。
swagger-ui-layer,基于layui 开源的swagger-ui的替换。界面大气,使用起来也很方便。swagger-ui-layer 依于swagger的功能,所以在原先项目中导入以下依赖即可
注意:
使用规则:
一、在返回对象类上中要使用注解@ApiModel(value="实体类对象", description="实体类描述"),对象字段上使用@ApiModelProperty(value=”字段说明“,required=”是否必填”)表示对model属性的说明
注意:@ApiModel value 不能同名,否则会导致参数乱窜
二、@API使用在Controller类上,表明是swagger资源
@Api(value = "仓库管理controller", tags = {"仓库管理接口"})
三、在每个接口方法中使用注解@ApiOperation(value = “接口说明”, >
Swagger2一些常用注解
最近遇到了一个使用swagger来生成接口文档的项目,在controller看到了一些没用过的注解(@API、@ApiOperation等),遂记录一下
@API
使用在类上,表明是swagger资源,@API拥有两个属性:value、tags,源码如下
//If tags is not used,this value will be used to set the tag for the operations described by this resource Otherwise, the value will be ignored
String value() default "";
//Tags can be used for logical grouping of operations by resources or any other qualifier
String[] tags() default {""};
1
2
3
4
5
生成的api文档会根据tags分类,直白的说就是这个controller中的所有接口生成的接口文档都会在tags这个list下;tags如果有多个值,会生成多个list,每个list都显示所有接口
@Api(tags = "列表1")
@Api(tags = {"列表1","列表2"})
1
2
value的作用类似tags,但是不能有多个值
@ApiOperation
使用于在方法上,表示一个>
1、打开电脑,然后打开需要查询的Excel工作薄,没有现成的excle工作簿可以新建; 2、选中需要进行模糊查询的列,并且选中工具栏上“开始”---“排序和筛选”---“筛选”; 3、这样在选中的列上有一个向下的下拉框,点击下拉框。选中“文本筛选”,下一步选择“包含”。 4、比如在这个例子中要查找到包含“刘”的所有行,在d出的“自定义自动筛选方式”中输入“刘”,点击确定。
/@ApiModel("大文件分片入参实体")public class MultipartFileParam {
@ApiModelProperty("文件传输任务ID") private String taskId;
@ApiModelProperty("当前为第几分片") private int chunk;
@ApiModelProperty("每个分块的大小") private long size;
@ApiModelProperty("分片总数") private int chunkTotal;
@ApiModelProperty("主体类型--这个字段是我项目中的其他业务逻辑可以忽略") private int objectType;
@ApiModelProperty("分块文件传输对象") private MultipartFile file;
开发经常时间选择的问题,有2个时间点需要选择。
后端mybatis处理的问题的
1前端
import { DatePicker} from 'antd';
const { RangePicker } = DatePicker;
//查询
onSearch = () => {
const { form, onSearch } = thisprops;
let _this = this;
formvalidateFields((err, values) => {
if (!err) {
let param = { values }
if (parameditDay) {
parambeginTime = _thischangeBeginDate(parameditDay[0]);
paramendTime = _thischangeEndDate(parameditDay[1]);
delete parameditDay
}
onSearch({param});
}
});
};
//转换时间格式(开始)
changeBeginDate = (date) => {
var d = new Date(date);
var month = (dgetMonth() + 1) > 9 (dgetMonth() + 1) : '0' + (dgetMonth() + 1);
var day = dgetDate() > 9 dgetDate() : '0' + dgetDate();
var nowdate = dgetFullYear() + '-' + month + '-' + day + ' 00:00:00';
return nowdate
}
//时间选择器
<FormItem {formItemLayout} label="修改日期">
{getFieldDecorator("editDay")
(
<RangePicker showTime format='YYYY-MM-DD' />
)
}
</FormItem>
后端
1dto
/
修改时间(开始)
/
@ApiModelProperty("修改时间(开始)")
private javalangString beginTime;
2mapperxml
<if test="beginTime != null and beginTime != '' ">
<![CDATA[ and CJSJ >= to_date(#{beginTime},'yyyy-MM-dd hh24:mi:ss')]]>
</if>
<if test="endTime != null and endTime != '' ">
<![CDATA[ and XGSJ <= to_date(#{endTime},'yyyy-MM-dd hh24:mi:ss')]]>
</if>
pre{overflow-x: auto} Swagger UI 简介
Swagger UI允许任何人都可以可视化API资源并与之交互,而无需任何实现逻辑。它是根据OpenAPI(以前称为Swagger)规范自动生成的,具有可视化文档,可简化后端实现和客户端使用。
SwaggerUI 特点
1、无依赖,UI可以在任何开发环境中使用,无论是本地还是在Web端中。
2、人性化,允许最终开发人员轻松地进行交互,并尝试API公开的每个 *** 作,以方便使用。
3、易于浏览,归类整齐的文档可快速查找并使用资源和端点。
4、所有浏览器支持,Swagger UI 在所有主要浏览器中均可使用,以适应各种可能的情况。
5、完全可定制,通过完整的源代码访问方式以所需方式设置和调整Swagger UI。
6、完整的OAS支持,可视化Swagger 20或OAS 30中定义的API。
关于swagger-ui的使用过程是怎么样的?
导入jar包
iospringfox springfox-swagger2 292 iospringfox springfox-swagger-ui 292
编写SwaggerConfig配置文件
/ / @EnableSwagger2 @Configuration public class SwaggerConfig { @Bean public Docket createRestApi() { return new Docket(DocumentationTypeSWAGGER_2) apiInfo(apiInfo()) select() //为当前包路径,控制器类包 apis(RequestHandlerSelectorsbasePackage("comstustusystemcontroller")) paths(PathSelectorsany()) build(); } //构建 api文档的详细信息函数 private ApiInfo apiInfo() { return new ApiInfoBuilder() //页面标题 title("管理系统API接口文档") //创建人 contact(new Contact("cxt", ">
以上就是关于swagger-ui及swagger用法全部的内容,包括:swagger-ui及swagger用法、RestTemplate 请求结果中包含数组。、Swagger常见注解@API、@ApiOperation、@ApiParam等等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)