我正在使用以下的springs autopopulatelist
方法1
passports = new AutopopulatingList<Passport>(Passport.class);
public class PassportFactory implements AutopopulatingList.ElementFactory {
private Person person;
public PassportFactory(Person person) {
this.person = person;
}
public Object createElement(int index) {
Passport passport = new Passport();
passport.setPerson(person);
return passport;
}
}
然后用这个
List<Passport> passports = new AutopopulatingList(new PassportFactory(this));
现在这两个代码都可以工作,但是我不知道两者之间有什么区别,因为从互联网复制了第二个代码会有什么帮助.有人可以解释一下我的区别吗
最佳答案
如果您使用:
护照=新的AutopopulatingList< Passport>(Passport.class); Spring将使用ReflectiveElementFactory< E>创建元素.
例如,这意味着您的列表元素必须具有none参数构造函数.
但是,如果您的列表元素没有这种构造函数,或者需要以特殊方式构建元素,则需要创建自己的ElementFactory. -例如,您的第二个代码,在每个创建列表元素中设置人员字段,而第一个将此字段留空.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。