概述
这里写自定义目录标题
- SpringBoot简单整合Swagger
- 1、引入swagger依赖
- 2、配置注意
- 3、配置类
- Swagger相关注解
- 测试Controller
SpringBoot简单整合Swagger
1、引入swagger依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
使用依赖解述:
- springbox 是一个通过扫描代码提取代码中的信息,生成API文档的工具;
- springbox-swagger2 依赖OSA规范文档(描述API的json文件),该组件能够帮助我们自动生成JSON文件;
- 通过springbox-swagger-ui 可以将json文件解析出来;
2、配置注意
Spring Boot 2.6及 更高版本使用的是PathPatternMatcher,
而Springfox使用的路径匹配是基于AntPathMatcher的,所以更改配置如下:
spring:
mvc:
pathmatch:
matching-strategy: ANT_PATH_MATCHER
3、配置类
SwaggerConfig类上添加 Configuration 表明这是一个配置类,添加 EnableSwagger2 开启Swagger配置
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
// 指定构建api文档的详细信息的方法:apiInfo()
.apiInfo(apiInfo())
.select()
// 指定要生成api接口的包路径,这里把controller作为包路径,生成controller中的所有接口
.apis(RequestHandlerSelectors.basePackage("com.yang.controller"))
.paths(PathSelectors.any())
.build();
}
下面这个类是Swagger中接口设定相关信息
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
// 设置页面标题
.title("Spring Boot集成 Swagger2接口总览")
// 设置页面描述
.description("Swagger接口页面")
// 设置联系方式
.contact("空山万籁," + "CSDN:http://blog.csdn.net/KS_wl")
// 设置版本
.version("1.0")
// 构建
.build();
}
这是所需要的实体类
相关注解:
ApiModel 注解用于实体类,表示对类进行说明,用于参数用实体类接收。
ApiModelProperty注解用于类中属性,表示对 model 属性的说明或者数据操作更改。
简化注解
Data注解是通过引入Lombok依赖,实现对代码的简化,减少实体属性的set与get方法,也可以直接使用Setter、Getter注解来代替。
@Data
@ApiModel(value = "用户实体类")
public class User {
@ApiModelProperty(value = "用户唯一标识")
private int id;
@ApiModelProperty(value = "用户姓名")
private String username;
@ApiModelProperty(value = "用户密码")
private String password;
}
Swagger相关注解
@Api 注解用于类上,表示标识这个类是 swagger 的资源。
@ApiOperation 注解用于方法,表示一个 http 请求的操作。
@ApiParam 注解用于参数上,用来标明参数信息。
测试Controller
RestController注解主要用于前后端分离项目,包含了Controller注解和ResponseBody注解
@RestController
@RequestMapping("/swagger")
public class TestController {
@GetMapping("/get/{id}")
public JsonResult<User> getUserinof(@PathVariable @ApiParam(value = "用户唯一标识") int id) {
User user = new User(1, "张三", "123456");
return new JsonResult(user);
}
}
最后
以上就是专一星星为你收集整理的Springboot整合SwaggerSpringBoot简单整合Swagger的全部内容,希望文章能够帮你解决Springboot整合SwaggerSpringBoot简单整合Swagger所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复