首先我定義User
類:Spring MVC控制器之間發送數據
public class User implements Serializable{
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNombre() {
return name;
}
public void setNombre(String name) {
this.name = name;
}
}
我做的是應用程序負責重新命名的用戶,首先定義選擇用戶的ID的負責視圖要重命名(modifyUser.jsp):
<html>
<body>
<form:form method="post" commandName="modifyUser">
<table width="95%" bgcolor="f8f8ff" border="0" cellspacing="0" cellpadding="5">
<tr>
<td align="right" width="20%">Id:</td>
<td width="20%">
<form:input path="id"/>
</td>
</tr>
</table>
<br>
<input type="submit" align="center" value="Execute">
</form:form>
</body>
</html>
驅動器負責管理這一觀點被(ModifyUserFormController):
public class ModifyUserFormController extends SimpleFormController {
protected final Log logger = LogFactory.getLog(getClass());
private UsuarioManager usuarioManager;
public ModelAndView onSubmit(Object command)
throws ServletException {
int id = ((ModifyUser) command).getId();
Usuario user = usuarioManager.consultUsuarioDao(id);
Map<String, Object> myModel = new HashMap<String, Object>();
myModel.put("usuario", user);
return new ModelAndView("showModifyUser", "model" ,myModel);
}
protected Object formBackingObject(HttpServletRequest request)
throws ServletException {
ModifyUser user = new ModifyUser();
user.setId(5);
return user;
}
public void setUsuarioManager(UsuarioManager usuarioManager) {
this.usuarioManager = usuarioManager;
}
}
它通過您從視圖中獲得的用戶名獲得用戶名。該驅動程序將負責發送名稱以修改另一個關係視圖控制器,以便在數據庫中進行編輯和存儲。
我在這裏有一個問題,因爲我不認爲我正確定義視圖或控制器,因爲我希望視圖顯示當前名稱作爲id,但只有字段爲空。
的看法是showModifyUser.jsp
<html>
<head/>
<body>
<form:form method="post" commandName="showModifyUser">
<table width="95%" bgcolor="f8f8ff" border="0" cellspacing="0" cellpadding="5">
<tr>
<td align="right" width="20%">Nombre:</td>
<td width="20%">
<form:input path="nombre" value = "${model.usuario.nombre}"/>
</td>
</tr>
</table>
<br>
<input type="submit" align="center" value="Execute">
</form:form>
</body>
</html>
而且控制器showModifyUserFormController:
public class ShowModifyUserFormController extends SimpleFormController {
protected final Log logger = LogFactory.getLog(getClass());
private UsuarioManager usuarioManager;
public ModelAndView onSubmit(Object command)
throws ServletException {
String nombre = ((CreateUser) command).getNombre();
CreateUser user = new CreateUser();
user.setNombre(nombre);
usuarioManager.saveUsuarioDao(user);
return new ModelAndView(new RedirectView(getSuccessView()));
}
protected Object formBackingObject(HttpServletRequest request) throws Exception {
CreateUser user = new CreateUser();
return user;
}
public void setUsuarioManager(UsuarioManager usuarioManager) {
this.usuarioManager = usuarioManager;
}
public UsuarioManager getUsuarioManager() {
return usuarioManager;
}
}
非常感謝,第一個選項對我來說效果很好「 – Tania 2015-02-07 12:13:44