SpringBoot获取配置信息的三种方式总结

 更新时间:2024年01月16日 10:16:53   作者:秋日的晚霞  
这篇文章给大家介绍了SpringBoot获取配置信息的三种方式,@Value属性值注入,绑定配置类和通过 environment获取这三种方式,文中通过代码示例给大家介绍的非常详细,具有一定的参考价值,需要的朋友可以参考下

Spring获取配置信息的三种方式

1. @Value属性值注入

    @Value("${student.name}")
    private String name;

    public static void main(String[] args) {
        SpringApplication.run(SpringConfigDemoApplication.class, args);
    }

    @PostConstruct
    private void init()
    {
        System.out.println("name = " + name);
    }

2. 绑定配置类

@ConfigurationProperties(prefix = "student")
public class StudentProperties {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
@EnableConfigurationProperties(StudentProperties.class)
@SpringBootApplication
public class SpringConfigDemoApplication {

    @Value("${student.name}")
    private String name;

    @Autowired
    private StudentProperties studentProperties;


    public static void main(String[] args) {
        SpringApplication.run(SpringConfigDemoApplication.class, args);
    }

    @PostConstruct
    private void init()
    {
        System.out.println("name1 = " + name);
    }

    @PostConstruct
    private void init2()
    {
        System.out.println("name2 = " +studentProperties.getName());
    }
    
    }

3. 通过 environment 获取

package com.sz.springconfigdemo;

import com.sz.springconfigdemo.properties.StudentProperties;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.core.annotation.Order;
import org.springframework.core.env.Environment;

import javax.annotation.PostConstruct;

@EnableConfigurationProperties(StudentProperties.class)
@SpringBootApplication
public class SpringConfigDemoApplication {

    @Value("${student.name}")
    private String name;

    @Autowired
    private StudentProperties studentProperties;

    @Autowired
    private Environment environment;

    public static void main(String[] args) {
        SpringApplication.run(SpringConfigDemoApplication.class, args);
    }

    @PostConstruct
    private void init()
    {
        System.out.println("name1 = " + name);
    }

    @PostConstruct
    private void init2()
    {
        System.out.println("name2 = " +studentProperties.getName());
    }

    @PostConstruct
    private void init3()
    {
        String environmentProperty = environment.getProperty("student.name");
        System.out.println("name3 = " +environmentProperty);
    }
}

以上就是SpringBoot获取配置信息的三种方式总结的详细内容,更多关于SpringBoot获取配置信息的资料请关注脚本之家其它相关文章!

相关文章

  • Spring如何使用通知 Advice 管理事务

    Spring如何使用通知 Advice 管理事务

    Spring 默认采用声明式事务管理(通过配置的方式) ,也可以实现编程式事务管理,这篇文章主要介绍了Spring使用通知Advice管理事务,需要的朋友可以参考下
    2023-06-06
  • 浅谈Synchronized和Lock的区别

    浅谈Synchronized和Lock的区别

    这篇文章主要介绍了浅谈Synchronized和Lock的区别,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • Hibernate+JDBC实现批量插入、更新及删除的方法详解

    Hibernate+JDBC实现批量插入、更新及删除的方法详解

    这篇文章主要介绍了Hibernate+JDBC实现批量插入、更新及删除的方法,结合实例形式较为详细的分析了Hibernate与JDBC针对数据库的批量操作相关实现技巧,需要的朋友可以参考下
    2017-11-11
  • Java使用Jedis操作Redis服务器的实例代码

    Java使用Jedis操作Redis服务器的实例代码

    本篇文章主要介绍了Java使用Jedis操作Redis服务器的实例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Mybatis Plus LambdaQueryWrapper的具体用法

    Mybatis Plus LambdaQueryWrapper的具体用法

    Mybatis Plus 在其基础上扩展了 LambdaQueryWrapper,LambdaQueryWrapper 提供了更加简便的查询语法,同时也避免了SQL注入的风险,感兴趣的可以了解一下
    2023-11-11
  • Java之Set 交集,差集,并集的用法

    Java之Set 交集,差集,并集的用法

    这篇文章主要介绍了Java之Set 交集,差集,并集的用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • 解决logback-classic 使用testCompile的打包问题

    解决logback-classic 使用testCompile的打包问题

    这篇文章主要介绍了解决logback-classic 使用testCompile的打包问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Java多线程继承Thread类详解

    Java多线程继承Thread类详解

    Java多线程的两种实现方式:继承Thread类 & 实现Runable接口,今天我们来学习下继承Thread类,希望大家能够喜欢
    2016-06-06
  • 使用maven的profile构建不同环境配置的方法

    使用maven的profile构建不同环境配置的方法

    这篇文章主要介绍了使用maven的profile构建不同环境配置的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • SpringMVC如何正确接收时间的请求示例分析

    SpringMVC如何正确接收时间的请求示例分析

    这篇文章主要为大家介绍了SpringMVC如何正确接收时间的请求示例分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09

最新评论