这里写一下如何通过REST格式来处理单个用户信息。
[size=large][b]1. 查询个人信息[/b][/size]
[b]1.1 在Controller里面加入:[/b]
[b]1.2 在WEB-INF/jsp/user目录创建jsp文件show.jsp[/b]
[b]1.3 修改list.jsp文件,加入链接信息[/b]
---<a href="user/${um.value.username}">${um.value.nickname}</a>
[size=large][b]2.更新个人信息[/b][/size]
2.1 在Controller中加入:
[b]2.2 添加update.jsp,路径参考上面。[/b]
[b]2.3 在list.jsp中添加修改用户链接[/b]
[size=large][b]3. 删除用户[/b][/size]
[b]3.1 在Controller中加入:[/b]
[b]3.2 在list.jsp中加入删除链接.[/b]
---<a href="user/${um.value.username}/delete">删除</a>
至此增删改查完成。
[size=large][b]1. 查询个人信息[/b][/size]
[b]1.1 在Controller里面加入:[/b]
//{username}就是path variable-路径参数
@RequestMapping(value="/{username}",method=RequestMethod.GET)
public String show(@PathVariable String username,Model model){ //@PathVariable就是指使用路径的值作为参数,这里也就是{username}
model.addAttribute(users.get(username));
return "user/show";
}
[b]1.2 在WEB-INF/jsp/user目录创建jsp文件show.jsp[/b]
<body>
Username:${user.username}<br/>
Password:${user.password}<br/>
Nickname:${user.nickname}<br/>
Email:${user.email}<br/>
</body>
[b]1.3 修改list.jsp文件,加入链接信息[/b]
---<a href="user/${um.value.username}">${um.value.nickname}</a>
[size=large][b]2.更新个人信息[/b][/size]
2.1 在Controller中加入:
@RequestMapping(value="/{username}/update",method=RequestMethod.GET)
public String update(@PathVariable String username,Model model){
model.addAttribute(users.get(username));
return "user/update";
}
@RequestMapping(value="/{username}/update",method=RequestMethod.POST)
public String update(@Validated User user,@PathVariable String username, BindingResult result){
//这里如果是数据库,则根据username获取对象,然后更新数据库。
users.put(username, user);
return "redirect:/user/users";
}
[b]2.2 添加update.jsp,路径参考上面。[/b]
<body>
<sf:form method="post" modelAttribute="user">
用户名称:<sf:input path="username"/><sf:errors path="username"/><br/>
用户密码: <sf:input path="password"/><sf:errors path="password"/><br/>
用户昵称: <sf:input path="nickname"/> <br/>
用户邮箱: <sf:input path="email"/><sf:errors path="email"/><br/>
<input type="submit" value="修改用户"/>
</sf:form>
</body>
[b]2.3 在list.jsp中添加修改用户链接[/b]
---<a href="user/${um.value.username}/update">修改</a>
[size=large][b]3. 删除用户[/b][/size]
[b]3.1 在Controller中加入:[/b]
@RequestMapping(value="/{username}/delete",method=RequestMethod.GET)
public String delete(@PathVariable String username){
users.remove(username);
return "redirect:/user/users";
}
[b]3.2 在list.jsp中加入删除链接.[/b]
---<a href="user/${um.value.username}/delete">删除</a>
至此增删改查完成。