如何在 Spring Bean 中定义类型为 List<E> 的 属性?
How to define a property of type List<E> in a Spring Bean?
我使用 Hybris,在 beans.xml 文件中我们可以定义要在项目中使用的 POJO。
我想知道如何在 Spring 中定义一个 POJO,其中 属性 类型为 List,其中 E 应该是我在 beans.xml.[=17 中定义的另一种类型=]
比如我想定义一个这样的POJO:
public class MyPojo{
private String someProperty;
public String getSomeProperty(){
return someProperty;
}
public void setSomeProperty(String someProperty){
this.someProperty = someProperty;
}
}
还有另一个将包含 MyPojo 列表的 POJO:
public class MyPojoListHolder{
private List<MyPojo> myPojoList;
public List<MyPojo> getMyPojoList(){
return myPojoList;
}
public void setMyPojoList(String myPojoList){
this.myPojoList= myPojoList;
}
}
MyPojo 将在我的 beans.xml 中定义如下:
<bean class="my.package.MyPojo">
<property name="someProperty" type="java.lang.String"></property>
</bean>
我可以这样定义 MyPojoListHolder:
<bean class="my.package.MyPojoListHolder">
<property name="myPojoList" type="java.util.List"></property>
</bean>
但这会创建一个 class,其中 myPojoList 定义为 List 对象,但我希望它被定义为 List。
我怎样才能做到这一点?
例如,您可以这样做:
<property name="genders" type="java.util.List<com.your.package.data.GenderData>"/>
在你的例子中,你最终会得到
<bean class="my.package.MyPojoListHolder">
<property name="myPojoList" type="java.util.List<my.package.MyPojo>"></property>
</bean>
我使用 Hybris,在 beans.xml 文件中我们可以定义要在项目中使用的 POJO。
我想知道如何在 Spring 中定义一个 POJO,其中 属性 类型为 List,其中 E 应该是我在 beans.xml.[=17 中定义的另一种类型=]
比如我想定义一个这样的POJO:
public class MyPojo{
private String someProperty;
public String getSomeProperty(){
return someProperty;
}
public void setSomeProperty(String someProperty){
this.someProperty = someProperty;
}
}
还有另一个将包含 MyPojo 列表的 POJO:
public class MyPojoListHolder{
private List<MyPojo> myPojoList;
public List<MyPojo> getMyPojoList(){
return myPojoList;
}
public void setMyPojoList(String myPojoList){
this.myPojoList= myPojoList;
}
}
MyPojo 将在我的 beans.xml 中定义如下:
<bean class="my.package.MyPojo">
<property name="someProperty" type="java.lang.String"></property>
</bean>
我可以这样定义 MyPojoListHolder:
<bean class="my.package.MyPojoListHolder">
<property name="myPojoList" type="java.util.List"></property>
</bean>
但这会创建一个 class,其中 myPojoList 定义为 List 对象,但我希望它被定义为 List。
我怎样才能做到这一点?
例如,您可以这样做:
<property name="genders" type="java.util.List<com.your.package.data.GenderData>"/>
在你的例子中,你最终会得到
<bean class="my.package.MyPojoListHolder">
<property name="myPojoList" type="java.util.List<my.package.MyPojo>"></property>
</bean>