繁体   English   中英

java 系统属性 vs spring 启动应用程序.properties 与 maven 属性

[英]java system properties vs spring boot application.properties vs maven properties

Java系统属性application.properties文件中定义的属性和pom.xml文件中定义的属性,它们是一样的吗?

  1. 所有这些属性之间有什么不同?

  2. 是否可以通过另一个引用一个(例如,从 pom.xml 文件传递系统属性...)

  3. 它们都是 Java 或 JEE 标准的一部分吗? 哪一个是?

不一样。

Java 系统属性是纯 Java。它们是 Java 的一部分。可以从命令行和代码中使用System.getProperties.setProperty()设置值

Maven 属性位于带有 '<properties'>'<property'> 标签的 pom.xml 中。 Maven 是一个构建工具,因此这些属性在构建时使用。

Spring 框架属性(application.properties 或 application.yaml)。 这些属性在运行时读取,主要是在启动期间读取。 标准属性由 Spring 类读取,例如 spring.data.source.url。 也可以使用 @Value 在代码中访问它们

您可以使用 application.properties 文件中的以下内容将 pom 属性获取到 application.properties 中:

foo.bar=@application.name@

您可以在 class 中使用以下内容将 application.properties 放入系统属性中:

@Value(${foo.bar})
String applicationName;

System.getProperties.setProperty("application.name", applicationName)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM