Spring Boot自定义配置实现IDE自动提示功能

一、背景
官方提供的spring boot starter的配置项,我们用IDE配置的时候一般都有自动提示的,如下图所示

而我们自己自定义的配置却没有,对开发非常不友好容易打错配置, 那这个是怎样实现的呢?
二、提示原理
IDE是通过读取配置信息的元数据而实现自动提示的,而元数据在目录 META-INF 中的 spring-configuration-metadata.json 或者 additional-spring-configuration-metadata.json
三、实现自动提示
以我这个自己开发的starter中的自定义配置文件为例,如果自己手动创建这些元数据的话工作量比较大,使用 IDEA 的话有自动生成功能

3.1. 引入依赖spring-boot-configuration-processor
在 zlt-swagger2-spring-boot-starter 工程中添加以下jar包
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency>
3.2. 修改IDEA配置
搜索 Annotation Processor 并设置 Enable annotation processing

3.3. 重新编译项目
项目在重新编译后就会自动生成 spring-configuration-metadata.json 文件

四、测试
自定义的swagger配置已经能自动提示了

参考资料
https://docs.spring.io/spring-boot/docs/current/reference/html/configuration-metadata.html
总结
以上所述是小编给大家介绍的Spring Boot自定义配置实现IDE自动提示功能,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
相关文章
Java中注解@JsonFormat与@DateTimeFormat的使用
从数据库获取时间传到前端进行展示的时候,我们有时候可能无法得到一个满意的时间格式的时间日期,本文主要介绍了Java中注解@JsonFormat与@DateTimeFormat的使用,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧2023-08-08
如何使用Spring AOP预处理Controller的参数
这篇文章主要介绍了如何使用Spring AOP预处理Controller的参数操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-08-08


最新评论