java - 有没有像 : #{systemProperties ['environment_variable_name' ]} to get the system variable? 这样的语法

标签 java spring spring-mvc jakarta-ee system-variable

在Spring的applicationcontext.xml文件中使用#{systemProperties['environment']}是否返回与环境关联的值?

或者有什么办法可以在spring applicationcontext.xml文件中获取系统变量值。

最佳答案

当我没记错的时候,有区别:

您可以通过不同的方式访问系统属性:

  • #{systemProperties['databaseName']}
  • #{systemProperties.databaseName}
  • ${databaseName}//$而不是#!!

#{systemProperties['databaseName']}您可以访问系统系统属性。

#{systemProperties.databaseName}您可以访问例如从命令行 (-DdatabaseName="testDB") 读取的系统属性。

${databaseName}您可以从加载和提供的属性文件中访问属性,例如由 PropertyPlaceholderConfigurer 以及系统属性

@Value("#{systemProperties['java.version']}")
private String javaVersionMap;

//Dont know how
//@Value("#{systemProperties.javav.version}")
//private String javaVersionDirect;

@Value("${java.version}")
private String javaVersionProp;

//-DcmdParam=helloWorld
@Value("#{systemProperties['cmdParam']}")
private String cmdParamMap;

@Value("#{systemProperties.cmdParam}")
private String cmdParamDirect;

@Value("${cmdParam}")
private String cmdParamProp

您可以在 @Value 中使用所有这些注释或 config.xml 文件 (<property name="databaseName" value="#{systemProperties.databaseName}"/>)

关于java - 有没有像 : #{systemProperties ['environment_variable_name' ]} to get the system variable? 这样的语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6285978/

相关文章:

java - JNA 中基于 C 的嵌套数组结构转换

java - 当交易超时时如何执行一些操作

java - 如何在带有注释映射的 Spring MVC 中使用不区分大小写的 URL

java - 启用 ssl 的 spring mvc - 没有可用的 session 属性

Java:在这里包含一个 else 更快吗?还是更好的练习?

java - 防止SQL注入(inject)——mybatis和spring

java - 如何将 JSON 对象映射到 Spring 对象

java - MongoTemplate聚合返回 "IllegalArgumentException: Invalid reference"

java - spring boot : java. lang.NoSuchMethodError : javax. servlet.http.HttpServletRequest.getHttpServletMapping()Ljavax/servlet/http/HttpServletMapping;

java - SVN Eclipse 忽略所有用户的文件夹