Springboot (01) properties配置文件属性注入java类

亦凉 2023-07-17 06:08 58阅读 0赞

配置文件的属性注入java类

    • 一、Spring中的方式
      • application.properties
      • 自定义properties属性
    • 二、boot中的方式

一、Spring中的方式

application.properties

  1. 如果配置文件是application.properties,项目启动时会自动扫描到,直接通过@Value注入到bean中即可。例子如下:
    (1) application.properties

    xxx.id=007

    1. xxx.name=小明来了
    2. xxx.sex=男孩子

(2)实体类 XxxConfig.java

  1. @Component
  2. public class XxxConfig {
  3. @Value("${xxx.id}")
  4. private Integer id;
  5. @Value("${xxx.name}")
  6. private String name;
  7. @Value("${xxx.sex}")
  8. private String sex;
  9. //此处省略 getter,setter,toString

(3)测试类输出测试下
在这里插入图片描述

自定义properties属性

  1. 自定义properties配置文件项目启动不会加载,需要通过@PropertySource注解

xxx2.properties

  1. xxx2.id=0072
  2. xxx2.name=小明来了2
  3. xxx2.sex=男孩子2

Xxx2Config.java

  1. @Component
  2. @PropertySource("classpath:xxx2.properties")
  3. public class Xxx2Config {
  4. @Value("${xxx2.id}")
  5. private Integer id;
  6. @Value("${xxx2.name}")
  7. private String name;
  8. @Value("${xxx2.sex}")
  9. private String sex;
  10. //此处省略 getter,setter,toString

二、boot中的方式

  1. 上面通过Spring的配置方式,如果属性特别多,配置起来工作量大且容易出错,boot中有了更好的方式来避免;

通过@ConfigurationProperties注解来配置前缀,如下示例:

BootConfig.java

  1. @Component
  2. @PropertySource("classpath:boot.properties")
  3. @ConfigurationProperties(prefix = "gg") //boot为前缀
  4. public class BootConfig { //属性名要与配置文件后缀一致
  5. private int id;
  6. private String name;
  7. private String sex;
  8. //此处省略 getter,setter,toString

boot.properties

  1. gg.id=009
  2. gg.name=小明来了boot
  3. gg.sex=男孩子boot

源码已上传 https://gitee.com/shuaidawang/SpringBoot

发表评论

表情:
评论列表 (有 0 条评论,58人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Properties配置属性文件步骤

    要求: 在平时的代码编写中,我们有一些常量是不需要改变并且会经常使用到的,我们可以把它配置到属性文件中,这样就方便后面的修改与维护。 方法: 第一步:可以选择在工程

    相关 java 属性(Properties)

    属性继承于Hashtable中,表示一个持久的属性集。属性列表中每个键及其对应值都是一个字符串 属性定义如下实例变量。这个变量持有一个属性对象相关的默认属性列表 属