I am new to Java Spring Framework and I have a requirement in my new project.
Using the Spring framework, I have a POJO class with set and get methods. I also have i
I would achieve that by having another POJO serving as a container with a list of your POJOs inside.
This would look like this :
public class PojoForm {
private List pojos;
public List getPojos() {
return pojos;
}
public void setPojos(List pojos) {
this.pojos = pojos;
}
}
Then in the controller, use this container instead of the actual pojo as a model attribute.
@ModelAttribute("pojoForm")
public PojoForm populatePojos() {
// Don't forget to initialize the pojos list or else it won't work
PojoForm pojoForm = new PojoForm();
List pojos = new ArrayList();
for(int i=0; i<2; i++) {
pojos.add(new Pojo());
}
pojoForm.setPojos(pojos);
return pojoForm;
}
@RequestMapping(method=RequestMethod.POST)
public String saveForm(@ModelAttribute("pojoForm") PojoForm pojoForm) {
for(Pojo pojo : pojoForm.getPojos()) {
service.save(pojo);
}
return "theview.jsp";
}
Then the view should look something like this :
a, b and c being the properties of the Pojo class.
You can also directly loop on the list like this :