(二)springboot整合之knife4j(详细)
knife4j除了引入依赖和配置启动类和swagger不一样其他都一样
1.创建项目
2.引入依赖
<!-- knife4j接口文档 start --> <dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>2.0.2</version> </dependency> <!-- 避免版本冲突 --> <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>29.0-jre</version> </dependency>
3.编写Knife4jConfig (配置docket和apiinfo)
@Configuration @EnableSwagger2 public class Knife4jConfig {@Beanpublic Docket docket(){return new Docket(DocumentationType.SWAGGER_2).groupName("DerKing部分").apiInfo(apiInfo()).select()//选择//可以扫描 any none 指定包 指定类 指定方法.apis(RequestHandlerSelectors.basePackage("com.example")) // .paths(PathSelectors.ant("com.example.controller/**")) 过滤不需要扫描的路径.build();//创建}private ApiInfo apiInfo(){return new ApiInfoBuilder().title("可心的kenfej文档").description("我想认真读一本书").version("v3.0").termsOfServiceUrl("https://blog.csdn.net/weixin_58993861?type=blog").contact("程序员").build();} }
4.配置启动类
使用@ConditionalOnClass(SpringfoxWebMvcConfiguration.class)注解
实现 WebMvcConfigurer 接口,重写 addResourceHandlers 方法
实现启动类 加载knife4j的静态资源
package com.example;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import springfox.documentation.spring.web.SpringfoxWebMvcConfiguration;@SpringBootApplication @ConditionalOnClass(SpringfoxWebMvcConfiguration.class) public class Knife4jApplication implements WebMvcConfigurer {public static void main(String[] args) {SpringApplication.run(Knife4jApplication.class, args);}实现启动类 加载knife4j的静态资源@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");} }
到这里就可以启动项目了 访问http://localhost:8080/doc.html(记得在拦截器里放开请求)
5.具体使用(controller层使用 实体类使用 分组展示)
controller层的使用:
@API @ApiModel:类注释 @Api(tags = "移动管理端--异常处理")
@ApiOperation:方法注释 @ApiOperation(value = "请求400页面")
@ApiParam:参数注释 @ApiParam("用户名")
@Api(tags = "移动管理端--异常处理") @RestController public class HellController {@ApiOperation(value = "请求400页面")@GetMapping("/h")public User he(){return new User();}@ApiOperation(value = "请求401页面")@GetMapping("/hell")public String helo(@ApiParam("用户名") String username, @ApiParam("密码") String password){return username + password;}}
实体类使用:
@API @ApiModel:类注释 @ApiModel("用户实体类")
@ApiModelProperty @ApiModelProperty("用户名")
@ApiModel("用户实体类") public class User {@ApiModelProperty("用户名")public String username;@ApiModelProperty("密码")public String password;}
分组展示:
配置两个Docket就行了。
(二)springboot整合之knife4j(详细)相关推荐
- SpringBoot整合Mybatis超详细流程
SpringBoot整合Mybatis超详细流程 文章目录 SpringBoot整合Mybatis超详细流程 前言 详细流程 0.引入Mybatis 1.创建数据 2.创建程序目录 3.理解后台访问流 ...
- springboot整合swagger+knife4j
springboot整合swagger+knife4j 参考网址: https://mp.weixin.qq.com/s/KlYj5JuJSJYQQ47mQu7b1w swagger配置参考文档 sw ...
- springboot篇】二十二. springboot整合Redis集群
springboot整合Redis集群 **中国加油,武汉加油!** 案例准备 1. 新建Springboot项目springboot-redis-sentinel 2. 编写yml 3. Test ...
- SpringBoot 整合 Swagger2 + Knife4j
文章目录 写在最前面 代码 1. 准备项目 2. 配置类 3. 控制器类(进行测试) 4. 启动器 网页查看效果 写在最前面 SpringBoot 项目,一般会提供一大堆的 Controller 来供 ...
- SpringBoot整合MyBatis-Plus3.1详细教程
一.说明 Mybatis-Plus是一个Mybatis框架的增强插件,根据官方描述,MP只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑.并且只需简单配置,即可快速进行 CRUD 操作,从而 ...
- SpringBoot系列课程(二)-SpringBoot整合MyBatis
1.SpringBoot和MyBatis整合 1.2. 准备数据 SET FOREIGN_KEY_CHECKS=0;-- ---------------------------- -- Table s ...
- SpringBoot整合SpringSecurity [超详细] (一)入门案例
文章目录 前言 1. 主流安全框架有哪些 2. Spring Security为什么越来越火 3. 为什么现在越来越多的人选择Spring Security 一.Spring Security 简介 ...
- springboot整合swagger knife4j starter
1.加入knife4j starter依赖 <dependency><groupId>com.github.xiaoymin</groupId><artifa ...
- SpringBoot整合Mybatis完整详细版
原文地址:https://blog.csdn.net/iku5200/article/details/82856621
最新文章
- Java基础(七)--Exception异常处理
- 硬核!一文梳理经典图网络模型
- Python课堂:判定IP地址合法性的三种方法
- uda 3.C++二维向量
- 定点c程序之五:定点数的字长效应
- YbtOJ#20073-[NOIP2020模拟赛B组Day6]钻石守卫【构造】
- 顺序表的插入删除查找遍历
- R语言-单一变量分析
- 越狱环境下代码控制手机重启(IOS,XCODE)
- mysql dump hbase_mysqldump 导出部分数据库
- idea设置svn上传或下拉代码
- NKOJ C2153「迎新春,贺新年,LJ24祝大家新年快乐」赛后总结帖by TangH
- xp计算机找不到音量调节,WinXP电脑没声音且小喇叭不见了如何解决?
- 使用mockjson-server 搭建 mock-server
- 51nod1693 水群
- 阿里服务器教程大全-服务器、建站、备案、网站配置
- sql查询本年度员工的平均工资
- 远力集团,到底是如何成为中国城市产业发展新引擎的?
- 投资经理,软件与互联网产品经理一个新去向?
- jvisualvm启动提示“无法监视本地Java应用程序”