Swagger-knife4j

文章目录

  • 使用方式
  • 一.导入maven
    • 在SpringBoot下使用
    • 在SpringCloud下使用
  • 二、编写配置
  • 至此已经可以启动去查看是否成功了,访问地址:[http://localhost:8080/doc.html](http://localhost:8080/doc.html)(java默认端口名为8080)
  • 三. 在ui中设置展示方法名字和字段
    • 1.字段设置
    • 2.效果
  • 个人使用感想


使用方式

knife4j的使用。

一.导入maven

在SpringBoot下使用

<dependency>
    <groupId>com.github.xiaoymingroupId>
    <artifactId>knife4j-micro-spring-boot-starterartifactId>
    <version>${knife4j.version}version>
dependency>

在SpringCloud下使用

因为不需要在多个子目录下放入UI,所以所有需要使用knife4j的子服务只需要导入。

<dependency>
    <groupId>com.github.xiaoymingroupId>
    <artifactId>knife4j-micro-spring-boot-starterartifactId>
    <version>${knife4j.version}version>
dependency>

然后在网关的位置导入ui。

<dependency>
    <groupId>com.github.xiaoymingroupId>
    <artifactId>knife4j-spring-boot-starterartifactId>
    <version>${knife4j.version}version>
dependency>

二、编写配置

@Configuration
@EnableSwagger2
@EnableKnife4j
public class Swagger2Config {
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .enable(true)//代表是否启动swagger 可配置到配置项中
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("XXX.XXX"))//代表controller所在的包
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("XX管理系统")
                .description("XX管理系统接口文档")
                .termsOfServiceUrl("http://localhost")
                .version("1.0")
                .build();
    }

}

至此已经可以启动去查看是否成功了,访问地址:http://localhost:8080/doc.html(java默认端口名为8080)

三. 在ui中设置展示方法名字和字段

1.字段设置

@Api(tags=“用户”)
@ApiOperation(“获取所有用户列表”)

@Api(tags = "用户")
@RestController
@RequestMapping("/xx-user")
public class xxUserController {
    @Autowired
    IxxUserService userService;

    @ApiOperation("获取所有用户列表")
    @GetMapping("/list")
    public ReturnResult listUser(){
        return ReturnResult.success(userService.list());
    }

@ApiModel(value=“LkUser”, description=“LkUser对象添加传入数据”)
@ApiModelProperty(value = “工号”)

@Data
@ApiModel(value="LkUser", description="LkUser对象添加传入数据")
public class LkUserAddRequest {
    @NotBlank(message = "[工号]不能为空")
    @ApiModelProperty(value = "工号")
    private String jobNumber;

    @NotBlank(message = "[昵称]不能为空")
    @ApiModelProperty(value = "昵称")
    private String name;

}

2.效果

Swagger-knife4j_第1张图片


个人使用感想

knife4j优化了原来的swagger界面,让前后端对接更轻松。

你可能感兴趣的:(Java,java,spring,boot,后端)