SpringBoot中读取application.properties配置文件的方法

 更新时间:2023年02月07日 09:50:12   作者:Knight_AL  
这篇文章主要介绍了SpringBoot中读取application.properties配置文件的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧

application.properties有以下这几条数据

方法一:@Value注解+@Component

建议properties少的时候用,多的时候就不要使用这种方法了

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class UserController {
    @Value("${wx.open.app_id}")
    private String appid;
    @Value("${wx.open.app_secret}")
    private String secret;
    @Value("${wx.open.redirect_url}")
    private String url;
    @RequestMapping("hello")
    public String test(){
        return appid+"---"+secret+"---"+url;
    }
}

另一种方法

创建一个WeProperties

@Component
@Data
public class WeProperties {
    @Value("${wx.open.app_id}")
    private String appid;
    @Value("${wx.open.app_secret}")
    private String secret;
    @Value("${wx.open.redirect_url}")
    private String url;
}

Controller层

@RestController
public class UserController {
    @Autowired
    private WeProperties properties;
    @RequestMapping("hello")
    public String test(){
        return properties.getAppid()+"---"+properties.getSecret()+"---"+properties.getUrl();
    }
}

方法二:@Component+@ConfigurationProperties

创建一个WeProperties

后面的属性名一定要保持一致

@Component
@ConfigurationProperties(prefix = "wx.open")
@Data
public class WeProperties {
    private String appid;
    private String app_secret;
    private String redirect_url;
}

Controller层

@RestController
public class UserController {
    @Autowired
    private WeProperties properties;
    @RequestMapping("hello")
    public String test(){
        return properties.getAppid()+"---"+properties.getApp_secret()+"---"+properties.getRedirect_url();
    }
}

方法三:@ConfigurationProperties+@EnableConfigurationProperties

创建一个WeProperties

后面的属性名一定要保持一致

@ConfigurationProperties(prefix = "wx.open")
@Data
public class WeProperties {
    private String appid;
    private String app_secret;
    private String redirect_url;
}

启动类添加@EnableConfigurationProperties

@SpringBootApplication
@EnableConfigurationProperties(value = WeProperties.class)
public class PropertiesApplication {
    public static void main(String[] args) {
        SpringApplication.run(PropertiesApplication.class,args);
    }
}

Controller层

@RestController
public class UserController {
    @Autowired
    private WeProperties properties;
    @RequestMapping("hello")
    public String test(){
        return properties.getAppid()+"---"+properties.getApp_secret()+"---"+properties.getRedirect_url();
    }
}

到此这篇关于SpringBoot中读取application.properties配置文件的方法的文章就介绍到这了,更多相关SpringBoot读取application.properties内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深入讲解Java synchronized的核心原理

    深入讲解Java synchronized的核心原理

    这篇文章主要为大家详细介绍了Java中synchronized的核心原理以及简单的用法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-07-07
  • SpringBoot 插件化开发模式详细总结

    SpringBoot 插件化开发模式详细总结

    插件化开发模式正在很多编程语言或技术框架中得以广泛的应用实践,大大提升了系统的扩展性和伸缩性,也拓展了系统整体的使用价值,那么为什么要使用插件呢,本文就详细介绍SpringBoot 插件化开发模式,感兴趣的同学可以参考下
    2023-06-06
  • Java中Future和FutureTask的示例详解及使用

    Java中Future和FutureTask的示例详解及使用

    Java中的Future和FutureTask通常和线程池搭配使用,用来获取线程池返回执行后的返回值,下面这篇文章主要给大家介绍了关于Java中Future和FutureTask使用的相关资料,需要的朋友可以参考下
    2021-11-11
  • SpringCloud微服务应用config配置中心详解

    SpringCloud微服务应用config配置中心详解

    这篇文章主要介绍了SpringCloud微服务应用-config配置中心,包括相关知识介绍、搭建、动态刷新、测试,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • java FastJson的简单用法

    java FastJson的简单用法

    FastJson是阿里的开源JSON解析库,可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean,这里我介绍一下FastJson的使用,感兴趣的朋友一起看看吧
    2021-09-09
  • Lombok同时使⽤@Data和@Builder踩坑总结

    Lombok同时使⽤@Data和@Builder踩坑总结

    这篇文章主要介绍了Lombok同时使⽤@Data和@Builder踩坑总结,文章围绕主题展开详细的内容介绍,具有一定的参考价值需要的小伙伴可以参考一下,希望对你的学习有所帮助
    2022-05-05
  • springboot远程debug调试全过程

    springboot远程debug调试全过程

    这篇文章主要介绍了springboot远程debug调试全过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Struts2 通过ognl表达式实现投影

    Struts2 通过ognl表达式实现投影

    这篇文章主要介绍了Struts2 通过ognl表达式实现投影,具有一定参考价值,需要的朋友可以了解下。
    2017-09-09
  • Java多线程中的Future类详细解读

    Java多线程中的Future类详细解读

    这篇文章主要介绍了Java多线程中的Future类详细解读,Future表示一个可能还没有完成的异步任务的结果,针对这个结果可以添加Callback以便在任务执行成功或失败后作出相应的操作,需要的朋友可以参考下
    2023-11-11
  • Java 多线程之间共享数据

    Java 多线程之间共享数据

    这篇文章主要介绍了Java 多线程之间共享数据,围绕Java 多线程之间共享数据展开文章内容线程范围的共享变量、使用Map实现线程范围内数据的共享、ThreadLocal实现线程范围内数据的共享,需要的朋友可以参考一下
    2021-10-10

最新评论