SpringBoot配置自动提示

简介

我们在配置文件中添加配置的时候,会发现当我们输入配置项的时候,会出现自动提示;但我们自己定义的类绑定 properties 配置的时候却没有提示功能,如果我们这个配置要由其他用户设置的话,其他用户根本就不知道有哪些配置;SpringBoot 提供了一个自动配置依赖用来解决这个问题

实现步骤

  1. 在 pom.xml 配置文件中引入 spring-boot-configuration-processor 依赖
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>
  1. 在 User.class 类中添加如下代码,该对象的两个属性从配置文件中设置
@Data
@Component
@ConfigurationProperties(prefix = "user")
public class User {
    /**
     * user name
     */
    private String userName;
    /**
     * user gender,male or female
     */
    private String gender;
}

注意

1)要想在配置文件中输入 user.xxx 的时候有配置的描述信息提示,需要按照上面的写法添加注释,双斜杠 // 这种单行注释是不生效的

2)测试发现注释上添加中文提示,在显示提示信息的时候会出现乱码,修改 IDEA 的编码格式还是无效,建议还是用英文

  1. 重启一下项目,只有重启了项目,提示才会生效;这是因为启动项目后,才会在 target/META-INF 目录下生成 spring-configuration-metadata.json 文件,我们自定义的配置都在这里面;也可以直接在这里面修改配置
{
  "groups": [
    {
      "name": "user",
      "type": "com.study.springboot.entity.User",
      "sourceType": "com.study.springboot.entity.User"
    }
  ],
  "properties": [
    {
      "name": "user.gender",
      "type": "java.lang.String",
      "description": "user gender, male or female",
      "sourceType": "com.study.springboot.entity.User"
    },
    {
      "name": "user.user-name",
      "type": "java.lang.String",
      "description": "user name",
      "sourceType": "com.study.springboot.entity.User"
    }
  ],
  "hints": []
}
  1. 最终效果如下,当输入 user 的时候就会出现提示信息

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值