为什么我的 Spring Boot Web 应用程序无法加载其配置属性?

戴夫

我创建了一个简单的示例 Spring Boot Web 应用程序,并且运行良好。也就是说,Web 应用程序启动后,控制器通过调用服务并返回结果来响应请求。这让我相信我拥有基本权利。我现在正在尝试通过application.properties文件添加外部配置,但我根本无法加载它。

我正在使用 Spring Boot 2、Spring 5、Eclipse 和 Maven。我的pom.xml包含:

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
  <version>2.0.1.RELEASE</version>
</dependency>

我的网络应用程序类是:

@SpringBootApplication(scanBasePackages="com.example.root")
public class ExampleWebApp {
    public static void main(String[] args) {
        SpringApplication.run(ExampleWebApp.class, args);
    }
}

我尝试加载环境的服务类是:

@Service
public class DataService {
    @Value("${com.example.property}")
    private String p1;
    @Value("com.example.property")
    private String p2;
    @Autowired
    private Environment env;
    public DataService() {
        ...
    }
 }

我的application.properties文件包含:

com.example.property=value

构建 Web 应用程序时,application.properties会正确复制到WEB-INF/classes.

当应用程序运行,我把一个破发点中的服务的构造函数,p1p2envnull关于我如何调试这个的任何建议?

pvpkiran

通过构造函数调试将不起作用。由于值是通过反射注入的,这发生在调用构造函数之后。

如果你想调试试试 @PostConstruct

@PostConstruct
  public void someMethodName() {
    System.out.println(p1);
  }

您为 p2( @Value("com.example.property"))注入的方式是错误的。p1( @Value("${com.example.property}")) 是正确的方法

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么我的Spring Boot Web应用程序不能在Gradle中完全运行?

为什么先取消jar然后再次jar会破坏我的Spring Boot Web应用程序?

为什么我的 Spring Boot Web APP 不工作?请

为什么我的 Spring Boot 应用程序即使在配置后也不会启动执行器

为什么我的简单 Spring Boot 应用程序无法在 Heroku 上部署?

配置 HTTP 端点以关闭 Spring Boot Web 应用程序

为什么Spring Boot应用程序pom同时需要spring-boot-starter-parent和spring-boot-starter-web?

为什么我的Spring应用程序从Spring Boot单元测试中运行

如何为嵌入在我的 spring-boot 应用程序中的 Web 服务器(Tomcat)配置低级套接字属性?

无法启动Spring Boot Web应用程序

无法使用Spring Boot运行Web应用程序

Spring Boot Web应用程序无法启动

如何使用配置类在 Spring Boot 中为我的应用程序配置属性?

为什么我无法在Spring Boot中使用YAML加载属性POJO?

为什么我收到错误“默认包中的 Spring Boot 应用程序”

为什么我的Spring Boot应用程序首先失败,然后突然在cloudfoundry中启动?

为什么我的 Spring Boot 应用程序不在 mustache 模板中呈现 messages.properties

为什么我在Spring Boot应用程序中遇到未找到错误的错误

为什么AOP在我的Spring Boot应用程序中不起作用?

为什么我的带有 SQS 的 Spring Boot 应用程序不显示 JMSHealthIndicator?

为什么在spring-boot中必须为Web应用程序提供单独的@Controller类文件?

如何正确配置我的 Spring Boot 应用程序?

为什么Spring Boot应用程序需要hikariCP?

为什么Spring Boot在打包时不加载应用程序yml(带有gradle)?

为什么我的Redis缓存不能在Spring-Boot / Spring-Data应用程序中工作?

为什么Spring Boot应用程序不断从config服务中获取配置?

当我尝试运行Spring Boot Web应用程序时得到BeanCreationException吗?

在我的Spring Boot + Security + Web应用程序中添加可选的Google登录

在 Spring Boot Web 应用程序中编译 LESS 文件的推荐方法是什么?