背景
导入maven依赖
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.3</version>
</dependency>
改造前端的页面


前台如何打开


如何被swagger捕获到
@Api("用户信息管理")
@RestController
@RequestMapping("/test/user")
public class TestController extends BaseController
@ApiOperation("获取用户列表")
@GetMapping("/list")
public R<List<UserEntity>> userList()
{
List<UserEntity> userList = new ArrayList<UserEntity>(users.values());
return R.ok(userList);
}
@ApiModel(value = "UserEntity", description = "用户实体")
class UserEntity
{
@ApiModelProperty("用户ID")
private Integer userId;
}
如何加上swagger注解

如何解决响应参数是空的问题
public class AjaxResult extends HashMap<String, Object>
{
修改前

修改后

@ApiOperation("查询工单详情列表")
@PreAuthorize("@ss.hasPermi('manage:taskDetails:list')")
@GetMapping("/list")
public R<List<TaskDetails>> list(TaskDetails taskDetails)
{
startPage();
List<TaskDetails> list = taskDetailsService.selectTaskDetailsList(taskDetails);
return R.ok(list);
}
对应的实体类加上注解
@ApiModel(description = "工单详情对象")
public class TaskDetails extends BaseEntity
{
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "详情Id")
private Long detailsId;
@Excel(name = "工单Id")
@ApiModelProperty(value = "工单Id")
private Long taskId;
}
@ApiModel(description = "Entity基类")
public class BaseEntity implements Serializable
{
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "搜索值")
@JsonIgnore
private String searchValue;
@ApiModelProperty(value = "创建者")
private String createBy;
@ApiModelProperty(value = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
}
此时就有了响应类型

调用的时候是需要headers请求头的


其他的配置信息都可以在配置类中设置

private ApiInfo apiInfo()
{
return new ApiInfoBuilder()
.title("标题:帝可得管理系统_接口文档")
.description("描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...")
.contact(new Contact(ruoyiConfig.getName(), null, null))
.version("版本号:" + ruoyiConfig.getVersion())
.build();
}