使用swagger生成restful风格的接口文档
程序员文章站
2024-02-15 21:51:29
...
项目中如何配置swagger?请点击下方链接
SpringBoot集成Swagger
导入依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.18</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
配置swagger
@Configuration
@EnableSwagger2
public class SwaggerConfig {
//配置了Swagger的docket实例
@Bean
public Docket docket(){
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
//配置要扫描接口的方式
.apis(RequestHandlerSelectors.basePackage("com.cp"))
.build();
}
//配置Swagger信息
private ApiInfo apiInfo(){
Contact contact = new Contact("chen","http://www.baidu.com","aaa@qq.com");
return new ApiInfo(
"chen的Api",//title
"描述",
"v1.0",//version
"http://www.baidu.com",//termsOfServiceUrl
contact,
"Apache 2.0",//license
"http://www.baidu.com",//licenseUrl
new ArrayList<>()
);
}
}
创建实体类
@Getter
@Setter
@ApiModel("用户实体类")
public class User {
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("年龄")
private int age;
}
创建controller
@RestController
@Api(tags = {"用户Controller"})
public class UserController {
@GetMapping("/user/{id}")
@ApiOperation(value = "根据id查询用户")
//这里可以使用这句话注释也可以使用@ApiParam
//@ApiImplicitParam(name = "id",value = "用户id",required = true,dataType = "int")
public String userList(@ApiParam("用户id") @PathVariable int id){
return "查询id为"+id+"的用户" ;
}
@PostMapping("/user")
@ApiOperation(value = "添加用户")
public String addUser(@ApiParam("用户对象") User user){
return "添加的用户名为:"+user.getName() ;
}
@PutMapping("/user/{id}")
@ApiOperation(value = "修改用户信息")
public String updateUser(@ApiParam("用户id") @PathVariable int id,@ApiParam("用户对象") User user){
return "修改的用户id为"+id+",用户名为:"+user.getName() ;
}
@DeleteMapping("/user/{id}")
@ApiOperation(value = "删除用户")
public String deleteUser(@ApiParam("用户id")@PathVariable int id){
return "删除的用户id为"+id;
}
}
测试
浏览器输入http://localhost:8080/swagger-ui.html
最终效果:
- 接口信息
- 实体类
- 测试接口是否正常
推荐阅读
-
使用swagger生成restful风格的接口文档
-
接口文档自动生成、使用apidoc 生成Restful web Api文档(express)
-
Java利用Swagger2自动生成对外接口的文档
-
Go语言使用swagger生成接口文档的方法
-
Java利用Swagger2自动生成对外接口的文档
-
详解SpringBoot结合swagger2快速生成简单的接口文档
-
Django使用swagger生成接口文档
-
使用apidoc管理RESTful风格Flask项目接口文档方法
-
Asp.Net Core2.0 WebAPI 使用Swagger生成漂亮的接口文档
-
springboot中使用swagger2构建restful接口文档