Knife4j 自定义参数解析 - Shapley - 博客园

Knife4j引入:

<dependency>

        <groupId>com.github.xiaoymin</groupId>
        <artifactId>knife4j-spring-boot-starter</artifactId>
        <version>${knife4j.version}</version>
    </dependency>

<knife4j.version>2.0.7</knife4j.version>

配置:

复制代码; "复制代码")

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;

@Configuration
@EnableSwagger2WebMvc public class Knife4jConfiguration {

@Bean(value = "defaultApi2") public Docket defaultApi2() {
    Docket docket=new Docket(DocumentationType.SWAGGER_2)
            .apiInfo(new ApiInfoBuilder() //.title("swagger-bootstrap-ui-demo RESTful APIs")
                    .description("\# swagger-bootstrap-ui-demo RESTful APIs") //.termsOfServiceUrl("http://www.xx.com/") //.contact("xx@qq.com")
                    .version("1.0")
                    .build()) //分组名称
            .groupName("2.X版本")
            .select() //这里指定Controller扫描包路径
            .apis(RequestHandlerSelectors.basePackage("cn.*****.controller"))
            .paths(PathSelectors.any())
            .build(); return docket;
}

}

复制代码; "复制代码")

在实体类上的定义(关键):

复制代码; "复制代码")

@ApiModel(value="批次",description="批次") public class Product extends Model<Product> { private static final long serialVersionUID = 1L;

@JsonIgnore
@TableId(value = "id", type = IdType.ASSIGN_ID) private String id; /*\*
 \* mid */ @ApiModelProperty(value = "mid",example = "232232323") private String mId;

}

复制代码; "复制代码")

备注:@JsonIgnore用来因此api文档上的显示。

然后在controller中定义:

@ApiOperation(value = "保存批次")
@PostMapping("/saveProduct") public Result saveProductSensor(@ApiParam(name="product",value="批次实体",required=true) @RequestBody List<Product> product)

然后运行,最终呈现效果如下:


原网址: 访问
创建于: 2022-02-21 20:57:01
目录: default
标签: 无

请先后发表评论
  • 最新评论
  • 总共0条评论