Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java spring属性解析器如何工作?_Java_Spring - Fatal编程技术网

Java spring属性解析器如何工作?

Java spring属性解析器如何工作?,java,spring,Java,Spring,我的spring context.xml文件中有属性占位符 <bean id="propertyConfigurer" class="com.techpleiad.poc.RMCPropertyUtil"> <property name="basenames" value="file:${config.file.dir}/prop_application" /> <property name="defaultEncoding" val

我的spring context.xml文件中有属性占位符

<bean id="propertyConfigurer" class="com.techpleiad.poc.RMCPropertyUtil">
        <property name="basenames" value="file:${config.file.dir}/prop_application" />
        <property name="defaultEncoding" value="UTF-8" />
        <property name="cacheSeconds" value="30"></property>
    </bean>

此属性'config.file.dir'未得到解析

“config.file.dir”是环境变量,当我调试代码并检查basename时,文件路径将保持原样..”{config.file.dir}/prop_应用程序'

我需要知道解析这些属性涉及哪些spring代码/类。 如何调试和解决此问题?

您可以尝试使用获取系统属性

#{systemProperties['config.file.dir']}
要读取环境变量,请使用

#{systemEnvironment['config.file.dir']}

systemEnvironment
属性包含运行程序的计算机上的所有环境变量。同时,
systemProperties
包含我们在应用程序启动时使用
-D
参数在Java中设置的所有属性。

您可以尝试获取系统属性

#{systemProperties['config.file.dir']}
要读取环境变量,请使用

#{systemEnvironment['config.file.dir']}

systemEnvironment
属性包含运行程序的计算机上的所有环境变量。同时,
systemProperties
包含我们在应用程序启动时使用
-D
参数在Java中设置的所有属性。

您可以尝试获取系统属性

#{systemProperties['config.file.dir']}
要读取环境变量,请使用

#{systemEnvironment['config.file.dir']}

systemEnvironment
属性包含运行程序的计算机上的所有环境变量。同时,
systemProperties
包含我们在应用程序启动时使用
-D
参数在Java中设置的所有属性。

您可以尝试获取系统属性

#{systemProperties['config.file.dir']}
要读取环境变量,请使用

#{systemEnvironment['config.file.dir']}


systemEnvironment
属性包含运行程序的计算机上的所有环境变量。同时,
systemProperties
包含我们在应用程序启动时使用
-D
参数在Java中设置的所有属性。

您需要注册一个
propertysourcesplaceconfigurer
,并引用您的属性源(或者不是,因为这是隐式添加的环境属性)

使用XML,您可以使用

<context:property-placeholder location="classpath:spring.properties" />


使用Java配置,只需定义一个
静态
@Bean
带注释的方法,该方法返回一个
属性资源占位符配置器
,您需要注册一个
属性资源占位符配置器
(或者不是,因为这是隐式添加的环境属性)

使用XML,您可以使用

<context:property-placeholder location="classpath:spring.properties" />


使用Java配置,只需定义一个
静态
@Bean
带注释的方法,该方法返回一个
属性资源占位符配置器
,您需要注册一个
属性资源占位符配置器
(或者不是,因为这是隐式添加的环境属性)

使用XML,您可以使用

<context:property-placeholder location="classpath:spring.properties" />


使用Java配置,只需定义一个
静态
@Bean
带注释的方法,该方法返回一个
属性资源占位符配置器
,您需要注册一个
属性资源占位符配置器
(或者不是,因为这是隐式添加的环境属性)

使用XML,您可以使用

<context:property-placeholder location="classpath:spring.properties" />


使用Java配置,只需定义一个
静态
@Bean
带注释的方法,该方法返回一个
属性资源占位符配置器

澄清没有得到解决?是
基本名称
的值,按字面意思是
文件:${config.file.dir}/prop_应用程序
?或者您是否得到异常?是属性文件中的
config.file.dir
?编辑了问题..希望它澄清了问题陈述..澄清没有得到解决?是
basenames的值
字面意思是
文件:${config.file.dir}/prop_应用程序
?或者您是否得到异常?是属性文件中的
config.file.dir
?编辑了问题..希望它澄清了问题陈述..澄清没有得到解决?是
basenames的值
字面意思是
文件:${config.file.dir}/prop_应用程序
?或者您是否得到异常?是属性文件中的
config.file.dir
?编辑了问题..希望它澄清了问题陈述..澄清没有得到解决?是
basenames的值
字面意思是
文件:${config.file.dir}/prop_应用程序
?或者您是否遇到异常?属性文件中是否存在
config.file.dir
?编辑了问题..希望它能澄清问题陈述。。