2018.5.7
仅为个人理解 不足之处欢迎指正~
本文进行对个人信息的修改
第一步:编写Dao层
在UserDao.java中增加一个方法
以及它的实现:
这里通过用户名修改用户 仅允许修改电话与邮箱信息
第二步:编写Service层
在UserService.java中增加一个方法:
在UserServiceImpl中实现:
第三步:编写View层界面
界面在Welcome.jsp即登录成功页面上增加一个超链接为:编辑信息
-
<%@ page language="java" contentType="text/html; charset=UTF-8"
-
pageEncoding=
"UTF-8"%>
-
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-
<html>
-
<head>
-
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-
<title>欢迎
</title>
-
</head>
-
<body>
-
${message}
<br>
-
用户名:${user.username}
<br>
-
电话:${user.phone}
<br>邮箱:${user.email}
<br>
-
<a href="editUser?username=${user.username}">编辑信息
</a>
-
</body>
-
</html>
这个超链接
传入了一个editUser指令 并传入了登录成功的那个用户的用户名
编写editUser页面:
-
<%@ page language="java" contentType="text/html; charset=UTF-8"
-
pageEncoding=
"UTF-8"
import=
"java.util.*"%>
-
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
-
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-
<html>
-
<head>
-
<body>
-
<form method="post" action="updateUser">
-
电话:
<input name="phone" value="${user.phone}" type="text">
<br>
-
邮箱:
<input name="email" value="${user.email}" type="text">
<br>
-
-
-
<input name="username" value="${user.username}" type="hidden">
<br>
-
<input type="submit" value="修改信息">
-
</form>
-
</body>
-
</head>
-
</html>
该页面传入了一个updateUser指令
当点击“修改信息”按钮后 执行这个传入
并传入了用户输入的新电话与新邮箱信息 然后通过一个隐藏起来的input传入了用户名信息
第四步:编写Controller层
上一步骤中我们传入了两个指令 一个为editUser 一个为updateUser
首先进行editUser指令的拦截:
这里拦截了随editUser指令一并传入的username信息
并通过这个username 查询到一个完整的user
然后跳转到editUser.jsp页面(这里的跳转是因为在spring配置了后缀为.jsp)
然后进行updateUser指令的拦截:
通过点击“修改信息”按钮后
接受到一个封装的User类 然后通过这个类执行update的service
然后跳转回welcome.jsp
并且返回新的用户信息
执行结果:
(1):
(2):
(3):
(4):
查看数据库:
完成修改
谢谢~