服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - springboot如何使用@Value获取配置文件的值

springboot如何使用@Value获取配置文件的值

2021-11-14 12:19知识追求者 Java教程

这篇文章主要介绍了springboot如何使用@Value获取配置文件的值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

使用@Value获取配置文件的值

1、创建配置文件(application.properties)

?
1
2
3
4
5
spring.activemq.broker-url=tcp://localhost:61616
spring.activemq.user=admin
spring.activemq.password=admin
spring.activemq.in-memory=true
spring.activemq.pool.enabled=false

2、创建测试类(MyController.java)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
package com.jeff.controller;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MyController {
    @Value("${spring.activemq.user}")
    private String user;
    @RequestMapping("myTest")
    public String myTest() {
        System.out.println("user的值:" + user);
        return "success";
    }
}

3、打开浏览器访问 http://localhost:8080/myTest,控制台输出结果

springboot如何使用@Value获取配置文件的值

springboot如何使用@Value获取配置文件的值

SpringBoot 使用@Value()注解获取到配置文件中的值为null

一、描述

?
1
2
3
4
5
6
7
8
9
@Slf4j
@Component
public class FileUtils {
    @Value("${document.path.output}")
    private String outPath;
}
document:
  path:
    output: E:/workspace/doc_convert/tmp

二、解决方式

新创建了一个SpringBoot项目,在使用@Value获取配置文件中的值时,一直为null。

通过排查发现,虽然值为null,说明配置的参地址是正确的,只是在Spring进行依赖注入的时候没有把这个值注入到变量中来。

通过检查发现,是由于使用此类(注解所在的类)时候是直接new的,并没有将此类的创建交由Spring容器进行管理。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/weixin_45739720/article/details/103702223

延伸 · 阅读

精彩推荐