SSM学习记录(六)——编辑/修改数据

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):


查看数据库:


完成修改


谢谢~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章