Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.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上下文中包含${key}_Java_Spring - Fatal编程技术网

Java 我有一个字符串在spring上下文中包含${key}

Java 我有一个字符串在spring上下文中包含${key},java,spring,Java,Spring,我有一个简单的spring上下文,如下所示: <bean id="acl.authentication.provider" class="comprovider.ProviderType" factory-method="getInstance"> <constructor-arg index="0" value="${key}"/> </bean> ${key}不是属性占位符,它是我真正的字符串,但spring希望从属性占位符获取它,但找不到它,因

我有一个简单的spring上下文,如下所示:

<bean id="acl.authentication.provider" class="comprovider.ProviderType" factory-method="getInstance">
    <constructor-arg index="0" value="${key}"/>
</bean>
${key}不是属性占位符,它是我真正的字符串,但spring希望从属性占位符获取它,但找不到它,因此引发异常。
在spring上下文中,我可以使用${}作为真正的字符串吗?

我不确定它是否有效,因为我手头没有测试它的方法,但我认为您可以通过执行以下操作欺骗spring el evaluator:

<bean id="acl.authentication.provider" class="comprovider.ProviderType" factory-method="getInstance">
    <constructor-arg index="0" value="#{'$'+'{key}'}"/>
</bean>

我不确定它是否有效,因为我手头没有什么可以测试的,但我认为您可以通过执行以下操作欺骗spring el evaluator:

<bean id="acl.authentication.provider" class="comprovider.ProviderType" factory-method="getInstance">
    <constructor-arg index="0" value="#{'$'+'{key}'}"/>
</bean>

为什么在属性文件中没有这样的值?key=${key}我没有任何属性文件,${key}是实数和最终值。我知道。这只是建议在属性文件中添加这样一个条目,因为将静态文本值外部化总是一个好的做法,而不是硬编码它们。哦,建议,是的。我同意你的建议,但有例外。Spring仍然在属性文件中搜索${key}。不幸的是,我在这台计算机中没有Spring设置。否则的话,我会乐意提供更多帮助。不努力,什么也说不出来。希望其他人能帮助你。干杯为什么在属性文件中没有这样的值?key=${key}我没有任何属性文件,${key}是实数和最终值。我知道。这只是建议在属性文件中添加这样一个条目,因为将静态文本值外部化总是一个好的做法,而不是硬编码它们。哦,建议,是的。我同意你的建议,但有例外。Spring仍然在属性文件中搜索${key}。不幸的是,我在这台计算机中没有Spring设置。否则的话,我会乐意提供更多帮助。不努力,什么也说不出来。希望其他人能帮助你。干杯