我正在尝试显示全名,以及主管和经理的复选框。这两个复选框被选中,如果这个人有这些值是真实的。
我要做的是显示具有全名的用户以及具有复选框的主管和经理列,并且这些列被选中或未选中,并且当提交表单时,更改也被绑定。我尝试了模型属性,但没有任何运气。
这是我到目前为止所拥有的。
控制器
@Controller
@RequestMapping("/person.html")
public class PersonsController {
@Autowired
private PersonService personService;
@RequestMapping(method = RequestMethod.GET)
public String initForm(@ModelAttribute("personView")PersonView personView, BindingResult result, Model model) {
List<Person> persons= personService.getPersonList();
PersonView personData = new PersonView();
personView.setPersonList(persons);
model.addAttribute("personView", personData);
return "member";
}
@RequestMapping(method = RequestMethod.POST)
public String submitForm(Model model, PersonView personView, BindingResult result) {
System.out.println("Controller runs");
model.addAttribute("persons", personView);
return "successMember";
}
}
看法
public class PersonView {
private boolean isSupervisor;
private boolean isManager;
private List<Person> personList;
public boolean isSupervisor() {
return isSupervisor;
}
public void setSupervisor(boolean isSupervisor) {
this.isSupervisor = isSupervisor;
}
public boolean isManager() {
return isManager;
}
public void setManager(boolean isManager) {
this.isManager = isManager;
}
public List<Person> getPersonList() {
return personList;
}
public void setPersonList(List<Person> personList) {
this.personList = personList;
}
}
领域
public class Person {
private String fullName;
private Boolean isSupervisor;
private Boolean isManager;
public String getFullName() {
return fullName;
}
public void setFullName(String fullName) {
this.fullName = fullName;
}
public Boolean getIsSupervisor() {
return isSupervisor;
}
public void setIsSupervisor(Boolean isSupervisor) {
this.isSupervisor = isSupervisor;
}
public Boolean getIsManager() {
return isManager;
}
public void setIsManager(Boolean isManager) {
this.isManager = isManager;
}
}
JSP
<html>
<title>Persons Information</title>
</head>
<body>
<form:form method="POST" modelAttribute="personView">
<table>
<tr>
<th>Full Name</th>
<th>Supervisor</th>
<th>Manager</th>
</tr>
<c:forEach var="person" items="${personView.personList}"
varStatus="row">
<tr>
<td>{person.fullName}</td>
<td><form:checkbox path="isSupervisor"
value="${person.isSupervisor}" /></td>
<td><form:checkbox path="isManager"
value="${person.isManager}" /></td>
</tr>
</c:forEach>
<tr>
<td><input type="submit" name="submit" value="Submit">
</td>
</tr>
<tr>
</table>
</form:form>
</body>
</html>
任何建议