Springboot集成knife4j实现风格化API文档(knife4j-spring-ui)

网友投稿 290 2022-06-07


这篇文章主要介绍了Springboot如何集成knife4j实现风格化API文档,帮助大家更好的使用springboot框架,感兴趣的朋友可以了解下

POM引入插件

<dependency>
	<groupId>com.github.xiaoymin</groupId>
	<artifactId>knife4j-spring-boot-starter</artifactId>
	<!--在引用时请在maven中央仓库搜索最新版本号 -->
	<version>2.0.3</version>
</dependency>

配置加载

package com.pengsn.apiserver.videoconference.config;
 
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
 
import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j;
 
import springfox.bean.validators.configuration.BeanValidatorPluginsConfiguration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
 
/**
 * 配置
 */
 
@Configuration
@EnableSwagger2
@EnableKnife4j
@Import(BeanValidatorPluginsConfiguration.class)
public class SwaggerConfiguration {
 
	@Bean(value = "defaultApi2")
	public Docket defaultApi2() {
		Docket docket = new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo())
				.select()
				// 这里指定Controller扫描包路径
				.apis(RequestHandlerSelectors.basePackage(
                  "com.pengsn.apiserver.videoconference.business"))
				.paths(PathSelectors.any()).build();
		return docket;
	}
 
	private ApiInfo apiInfo() {
		Contact contact = new Contact("pengsn", "", "");
		return new ApiInfoBuilder().title("视频会议接口描述").
		description("视频会议接口描述").contact(contact).version("1.0").build();
	}
}

注解使用

  • @Api(tags="controller description"); 作用于 类
  • @ApiOperator(value="接口名称", notes="接口描述") 作用于 方法
  • @ApiOperationSupport(order=1) 排序

界面显示



版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:vue中封装axios并实现api接口的统一管理(vue3 axios封装)
下一篇:macOS Sierra怎样降级重装系统?macOS Sierra降级到OS X El Capitan教程(macos系统的开发者是谁)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~