Java 我可以直接从SpEL表达式创建bean吗?
我有一个生成SpEL列表的SpEL表达式。(结果类型实际上是一个Java数组,但没有意义上的诡辩。) 我希望将SpEL表达式的结果“升级”到SpringXMLBeans配置文件中的一个bean。一种可行的方法是构造ArrayList bean,并将数组作为Java 我可以直接从SpEL表达式创建bean吗?,java,xml,spring,spring-el,spring-bean,Java,Xml,Spring,Spring El,Spring Bean,我有一个生成SpEL列表的SpEL表达式。(结果类型实际上是一个Java数组,但没有意义上的诡辩。) 我希望将SpEL表达式的结果“升级”到SpringXMLBeans配置文件中的一个bean。一种可行的方法是构造ArrayList bean,并将数组作为构造函数arg提供,如下所示: <bean name="myList" class="java.util.ArrayList"> <constructor-arg value="#{ my SpEL expressio
构造函数arg提供,如下所示:
<bean name="myList" class="java.util.ArrayList">
<constructor-arg value="#{ my SpEL expression here }"/>
</bean>
这对我来说似乎有点麻烦。有没有一个行程序可以做同样的事情,让我直接将数组放入bean中,而不必将它包装在新构造的ArrayList
bean中
如果没有,是否有更简洁或更清晰的语法来完成我现在正在做的事情?好吧,我对java.lang.String的bean定义也有同样的问题:
<bean id="myString" class="java.lang.String">
<constructor-arg value="foo"/>
</bean>
我已经和它生活了很长一段时间了。尝试破解而不做真正的工作是如此简单:-)
试试这个怎么样:
<util:list id="myList">
<value>#{ my SpEL expression here }</value>
</util:list>
#{这里是我的SpEL表达式}
从另一方面来说,您只需转到JavaConfig,就可以摆脱这种XML拐杖。您应该理解XML定义有点局限于XML语言边界,请原谅他带来的一些不便