Spring Boot 自定义应用开发框架七——API在线接口文档 Knife4j

管理在线文档的插件有很多,例如swagger。
我这里使用Knife4j,knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案,更利于前后端使用。

引入jar包

com.github.xiaoymin knife4j-spring-boot-starter 3.0.3

配置文件

@Configuration
public class Knife4jConfiguration {

	@Bean
	public Docket defaultApi() {
		Docket docket = new Docket(DocumentationType.SWAGGER_2).enable(true).apiInfo(this.apiInfo()).groupName("user").select().apis(RequestHandlerSelectors.any()).paths(PathSelectors.any())
					.paths(PathSelectors.regex("(?!/error.*).*")).build();
		return docket;
	}

	private ApiInfo apiInfo() {
		return new ApiInfoBuilder().title("系统接口文档").description("").version("1.0").build();
	}
}

效果

启动项目后,在浏览器中输入 http://127.0.0.1:8888/doc.html,效果如下
在这里插入图片描述
上面是获取项目所有的API,但是当项目很大时,这样处理就不太友好了,就需要通过分组的方式显示API,方法很简单

@Bean
	public Docket userApi() {
		Docket docket = new Docket(DocumentationType.SWAGGER_2).enable(true).apiInfo(this.apiInfo());					docket.groupName("user").select().apis(RequestHandlerSelectors.basePackage("com.hnexm.controller.user")).paths(PathSelectors.any()).build();		
		return docket;
	}

要分几个组就写几个对应的方法即可,如果需要分组,在搭建项目时,将controller按照不同的分组存放到不同的包路径下

登录验证

默认没有设置用户名密码时,只要输入上面的地址就可以直接查看,在开发过程中没问题,但是项目上线后肯定不行,我们在项目配置文件yml中设置开启登录验证即可。

knife4j:
  # 是否开启加强模式 true开启  false关闭
  enable: true
  setting:
    # 是否开启调试功能  true开启  false关闭
    enableDebug: true
  basic:
    # 是否开启认证功能  true开启  false关闭
    enable: true
    username: admin
    password: 123456

这样就需要输入用户名,密码才能打开了
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值