我正在尝试使用 Spring 中的等效 bean 定义在 Java 代码中重现赋值。不过,据我所知,Spring 只允许您为对象内的字段赋值(前提是该类定义了适当的 setter 方法)。有没有一种方法可以使用 Spring bean 简单地捕获对对象的引用?
这是我希望它如何工作的示例:
<!-- Non-working example. -->
<bean id="string" class="java.lang.String">
<value>"I am a string."</value>
</bean>
我意识到在这种特殊情况下我可以只使用 <constructor-arg>
,但我正在寻找更通用的解决方案,该解决方案也适用于不提供参数化构造函数的类。
最佳答案
String 类是不可变的。 java.lang.String 类中没有可用的属性 setter 方法
。如果你想注入(inject)你可以在下面使用的属性值:
<bean id="emp" class="com.org.emp">
<property name="name" value="Alex" />
</bean>
在上面的 obj emp 中,它的 name 属性将被设置为 Alex。
关于java - Spring中能直接给bean赋值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35648741/