登陆以后把Username弄成超连接:
sql
<td><a th:href="@{update?(userId=${userInfo.userId},userName=${userInfo.userName})}">改不改?<span th:text="${userInfo.userName}">25</span></a></td>app
要注意<tr>是一行的意思,<td>是里面每列的内容的意思。spa
注意遍历的时候不要遍历用户Id和用户名。不然用户名和用户id会在每个上都有,就写在tr里面哪儿输出哪儿遍历。以下:orm
<tr th:each="userInfo,status:${List}"> get
<td><a th:href="@{delete?(userId=${userInfo.userId})}">删不删?<span th:text="${userInfo.userId}">250</span></a></td> input
<td><a th:href="@{update?(userId=${userInfo.userId},userName=${userInfo.userName})}">改不改?<span th:text="${userInfo.userName}">25</span></a></td>it
</tr>io
而后点如下超连接以后跳出更新页面,页面内容以下:form
<form action="updateConfirm" th:object="${userBean}" method="POST">class
<input name="userId" type="hidden" th:value="${userBean.userId}"/>
<input name="userName" type="text" th:value="${userBean.userName}"/>
新密码: <span><input name="userPass" type="password" /></span>
新密码确认: <span><input name="userPass2" type="password" /></span>
<button type="submit" name="update" >确认更改</button>
<button type="submit" name="cancel" >取消更改</button>
<span th:text="${message}"></span>
</form>
跳出此页面后会显示获取到的用户名,还有两个框,一个是新密码一个是新密码确认。
对用户名和密码可进行修改,要修改三个地方,一是在sql语句中的Update语句
<update id="updateuser"
parameterClass="cn.training.bean.UserBean">
update user set userName=#userName#,userPass=#userPass#
WHERE
user_id = #userId#
</update>
其次是contoller里面须要写三个控制器:
一是用来跳转到修改页面的控制器
@RequestMapping(value = "/update", method = RequestMethod.GET)
public String update(UserBean userBean,Model model) {
return "updateConfirm";
}
二个是用来肯定修改内容的控制器:,并进行修改,肯定改正是否成功。
@RequestMapping(value = "/updateConfirm", method = RequestMethod.POST,params="update")
public String updateOK(UserBean userupdate, Model model) {
String pass1=userupdate.getUserPass();
String pass2=userupdate.getUserPass2();
if(pass1.equals(pass2)){
int update = helloWorldService.updateUser(userupdate);
model.addAttribute("userBean",userupdate);
if(update==1){
List<UserBean> result1 = helloWorldService.searchUserall(userupdate);
model.addAttribute("List", result1);
model.addAttribute("message","更改为功!");
}
else{
model.addAttribute("message","更改失败!");
return "updateConfirm";
}
}
else{
model.addAttribute("message","更改失败!");
return "updateConfirm";
}
return "search";
}
如下是用来取消删除的控制器:
@RequestMapping(value = "/updateConfirm", method = RequestMethod.POST,params="cancel")
public String updateNo(UserBean userBean, Model model) {
List<UserBean> result1 = helloWorldService.searchUserall(userBean);
model.addAttribute("List", result1);
return "search";
}
最后在service里面写上捕捉抛出错误的代码:
public int updateUser(UserBean frm) {
int result=0;
try {
result=updateDao.execute("user.updateuser", frm);
}catch(Exception e){
return result;
}
return result;
}
就能完成修改用户名和密码的过程。