我有三个(A,B,C)的context.xml弹簧,A为基本配置,B和C导入A.限定弹簧上下文字符串
在关于AI豆有:
<bean class="com.example.Ex"> <property name="aString" value="${myString}" /> </bean>
现在我想在B和C上下文中定义属性myString,是否有可能在不创建的情况下加载并加载两个不同的属性文件?
我有三个(A,B,C)的context.xml弹簧,A为基本配置,B和C导入A.限定弹簧上下文字符串
在关于AI豆有:
<bean class="com.example.Ex"> <property name="aString" value="${myString}" /> </bean>
现在我想在B和C上下文中定义属性myString,是否有可能在不创建的情况下加载并加载两个不同的属性文件?
您可以通过声明类型为String的bean来尝试另一种方式,而不是处理属性。
这样:
一个
<bean class="com.example.Ex">
<property name="aString" ref="str" />
</bean>
然后你在乙申报和C上下文中的 “STR” 引用这样:
乙
<bean id="str" class="java.lang.String">
<constructor-arg value="string_1"/>
</bean>
Ç
<bean id="str" class="java.lang.String">
<constructor-arg value="string_2"/>
</bean>
这也是其中之一。
<bean id="str" class="com.example.Ex">
<constructor-arg type="java.lang.String" value="INDIA"/>
这并没有帮助解决上下文B和C对字符串具有不同的值的问题,这取决于上下文A – Kieran
此外,您还意味着存在Ex类的构造函数,它接受String作为参数。 –
为了完整这里创建一个字符串的另一种方式:
,而不是调用它迫使一个新的对象不必要地创建String构造它可能是一个更好的主意,使用的valueOf方法,该方法可以在这里作为一个“什么都不做”的构造函数:
<bean id="str" class="java.lang.String" factory-method="valueOf">
<constructor-arg value="string_1"/>
</bean>
然而,这仅仅是作为学术解析附加的XML attri的开销会导致字符串被创建的bute可能会大于调用valueOf而不是构造函数的性能增益。
这是真的......该String类有一个构造函数与一个字符串...我没有想到它..谢谢你! – rascio
哪一种练习最好?为什么? –