spring 三 mvc 保存多个实体
国外例子:
实体
public class Team {
private String teamName;
private String coach;
private List<Player> players;
public Team() {
players = LazyList.decorate
(new ArrayList<Player>(),
new InstantiateFactory(Player.class));
}
//accessor methods
}
public class Player {
private String name;
private String age;
//accessor methods
}
控制层controller
public class GetTeamController extends SimpleFormController {
public GeTeamController(){
setCommandClass(Team.class);
setCommandName("team");
}
@Override
protected ModelAndView onSubmit(Object command)
throws Exception
{
Team team = (team) command;
persist(team);
return new ModelAndView(getSuccessView());
}
}
页面jsp:
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<form:form commandName="team" id="teamForm">
Team Name<form:input path="teamName"><br/>
Coach<form:input path="coach"/>
<input type="button" value="add player" onclick="addInput()"/>
<input type="submit"/>
</form:form>
动态添加js
function addPlayer() {
document.getElementById(the id of the form).innerHTML +=
"New Player<br/>
<input type='text' name='players["+ index in arraylist where the player is going to added +"].name'>
<br />
<input type='text' name='players["+ same index as above +"].age'>
<br />";
}
经过这几个例子,应该明白了吧。
……