swagger-bootstrap-ui 升级为 knife4j
- 官方文档
https://doc.xiaominfo.com/knife4j/documentation/get_start.html
2. demo地址:
https://gitee.com/xiaoym/swagger-bootstrap-ui-demo/tree/master/knife4j-spring-boot-fast-demo
3. 在maven项目的pom.xml
中引入Knife4j的依赖包,代码如下:
<dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>2.0.7</version> </dependency>
4. 创建Swagger配置依赖,代码如下:
@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("com.github.xiaoymin.knife4j.controller")) .paths(PathSelectors.any()) .build(); return docket; } }
5. 启动SpringBoot项目即可看到http://ip:port/path/doc.html
示例: http://localhost:8080/api/doc.html
6. knife4j 对于swagger-bootstrap-ui
后端Java代码和ui包分离为多个模块的jar包,以面对在目前微服务架构下,更加方便的使用增强文档注解(使用SpringCloud微服务项目,只需要在网关层集成UI的jar包即可,因此分离前后端)
然后增加了直接下载文档功能(可以下载md,html,word,openAPI,pdf)