springboot-swagger:配置实体类和注释
1 配置实体类
1.1 创建pojo包,并在该包下编写用户实体类
src/main/java/com/lv/pojo/User.java
package com.lv.pojo;
public class User {
public String username;
public String password;
}
1.2 编写HelloControlelr
在控制类中编写一个请求,只要这个实体在请求的返回值上(即使是泛型),都能映射到实体项中
src/main/java/com/lv/controller/HelloController.java
package com.lv.controller;
import com.lv.pojo.User;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@RequestMapping("/hello")
public String hello(){
return "hello";
}
//只要我们的接口中,返回值中存在实体类,他就会被扫描到Swagger中
@PostMapping(value = "/user")
public User user(){
return new User();
}
}
1.3 启动程序测试
实体类显示成功
2 swagger中的注释
swagger的注释都是通过添加注解的方式实现
2.1给用户类添加注释的注解
@ApiModel为类添加注释
@ApiModelProperty为类属性添加注释
src/main/java/com/lv/pojo/User.java
package com.lv.pojo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
//@Api(注释)
@ApiModel("用户实体类")
public class User {
@ApiModelProperty("用户名")
public String username;
@ApiModelProperty("密码")
public String password;
}
2.2 启动程序查看注释位置
2.3 给请求接口配置注释的注解
@ApiOperation 为接口方法添加注释
@ApiParam 为参数添加注释
src/main/java/com/lv/controller/HelloController.java
@ApiOperation("hello控制类")
@GetMapping(value = "/hello2")
public String hello2(@ApiParam("用户名") String username){
return "hello"+username;
}
2.4 重启程序查看注释位置
2.5 Swagger注解简单说明:
- Swagger的所有注解定义在io.swagger.annotations包下
- @Api(tags = "xxx模块说明") 作用在模块类上
- @ApiOperation("xxx接口说明") 作用在接口方法上
- @ApiModel("xxxPOJO说明") 作用在模型类上:如VO、BO
- @ApiModelProperty(value = "xxx属性说明",hidden = true) 作用在类方法和属性上,hidden设置为true可以隐藏该属性
- @ApiParam("xxx参数说明") 作用在参数、方法和字段上,类似@ApiModelProperty