我建立一个JSP页面进入足球比赛的结果。 我得到的悬而未决的游戏列表,我想一一列举如下:
team1 vs team4
[hidden field: game id]
[input field for home goals]
[input field for away goals]
team2 vs team5
[hidden field: game id]
[input field for home goals]
[input field for away goals]
我从来不知道有多少场比赛将陆续上市。 我试图找出如何设置的绑定,以便在表单提交后的控制器能够访问这些字段。
是否有人可以指导我在正确的方向。 我使用Spring MVC的3.1
Spring可以绑定索引属性 ,所以你需要创建游戏的信息对象对你的命令,就像一个列表:
public class Command {
private List<Game> games = new ArrayList<Game>();
// setter, getter
}
public class Game {
private int id;
private int awayGoals;
private int homeGoals;
// setters, getters
}
在你的控制器:
@RequestMapping(value = "/test", method = RequestMethod.POST)
public String test(@ModelAttribute Command cmd) {
// cmd.getGames() ....
return "...";
}
在JSP中,你将不得不设置,如输入的路径:
games[0].id
games[0].awayGoals
games[0].homeGoals
games[1].id
games[1].awayGoals
games[1].homeGoals
games[2].id
games[2].awayGoals
games[2].homeGoals
....
如果我没有记错,在春季3 自动增长藏品现在是结合列出的默认行为,但对于较低的版本中,你不得不使用AutoPopulatingList而不只是一个ArrayList(只是作为参考: Spring MVC和处理动态形式的数据:将AutoPopulatingList )。