介绍: knife4j jeecg-boot用的就是这个,我之前要搭过swagger-ui,但外观,体验都没有knife4j好,我没记错的话已经停止发布版本了,所以我的多模块项目就用到了这个,还搭建了jwt token获取我也是在网上找的工具。
package com.zuodou.knife4jconfig;import com.google.common.base.Optional; import io.swagger.annotations.ApiOperation; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.RequestHandler; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.ParameterBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.schema.ModelRef; import springfox.documentation.service.*; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spi.service.contexts.SecurityContext; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2; import com.zuodou.enums.CommonConstant;import java.util.ArrayList; import java.util.Collections; import java.util.List;import static springfox.documentation.builders.RequestHandlerSelectors.basePackage;@Configuration @EnableSwagger2 public class Knife4jConfiguration {// 定义分隔符,配置Swagger多包private static final String splitor = ";";@Bean(value = "defaultApi2")public Docket defaultApi2() {Docket docket=new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())//分组名称.groupName("2.X版本").select()//这里指定Controller扫描包路径 这种是指定扫描多个不同的包,没研究好,出现了问题,我就把包名统一改成com.zuodou // .apis(basePackage("zuodou.zuodousystem"+splitor+"zuodou.zuodoubase")).apis(basePackage("com.zuodou")).paths(PathSelectors.any()).build();return docket;}// api基本信息private ApiInfo apiInfo() {return new ApiInfo("dxiaodang's swagger","测试knife4j-ui","v1.0","http://mail.qq.com",new Contact("dangbo", "http://mail.qq.com", "145xxxxx@qq.com"), //作者信息"Apache 2.0","http://www.apache.org/licenses/LICENSE-2.0",new ArrayList());}}
项目结构展示
其他的没什么,那个注入过去就差不多,依赖你用的什么spring boot 版本就得去找对应的knife4j匹配的版本,或者你手动去输一个一个试