Skip to content

8 使用jsp改造用户管理

8.1 查询

8.1.1 UserServlet中的 queryList方法

java
/**
     * 查询类表
     *
     * @param request
     * @param response
     */
    private void queryList(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {


        String sql = "select * from user";
        List<User> userList = userDao.list(sql);

        request.setAttribute("userList",userList);

        request.getRequestDispatcher("user/user_list.jsp").forward(request,response);
    }

8.1.2 user_list.jsp

html
<%@ page import="java.util.List" %>
<%@ page import="com.neuedu.entity.User" %><%--
  Created by IntelliJ IDEA.
  User: root
  Date: 2020/12/13
  Time: 11:22
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>


 <a href='user?type=toAdd'>添加</a>
 <table border='1' width='100%'  cellpadding='0' cellspacing='0'>			
     <tr>               
         	<td>序号</td>   
         	<td>用户名</td> 
         	<td>昵称</td>   
         	<td>密码</td>   
         	<td>出生日期</td>   
         	<td>性别</td>   
         	<td>邮箱 </td>   
         	<td>操作 </td>   
         </tr>


	 <%
		 List<User> userList = (List<User>) request.getAttribute("userList");
		 for (User user : userList) {
	 %>

     <tr>               
         	<td><%=user.getId()%></td>
         	<td><%=user.getUsername()%></td>
         	<td><%=user.getDisplayname()%></td>
         	<td><%=user.getPassword()%></td>
         	<td><%=user.getBirthday()%></td>
         	<td><%=user.getGender()%></td>
         	<td><%=user.getEmail()%></td>

         	<td><a href='user?type=toEdit&id=<%=user.getId()%>'>编辑</a>  <a href='user?type=delete&id=<%=user.getId()%>'>删除</a</td>
         </tr>              
   <%
	   }
   %>

     </table>           

</body>
</html>

8.2 添加

修改列表页超链接

html
<a href='<%=request.getContextPath()%>/user/user_add.jsp'>添加</a>

user_add.jsp

html
<%--
  Created by IntelliJ IDEA.
  User: root
  Date: 2020/12/13
  Time: 11:54
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>


<form method='post' action='<%=request.getContextPath()%>/user?type=add'>
    <h3>用户添加</h3>
    <table width='100%' border='1'>
        <tr>
            <td>username</td>
            <td><input type='text' name='username'></td>
        </tr>
        <tr>
            <td>displayname</td>
            <td><input type='text' name='displayname'></td>
        </tr>
        <tr>
            <td>password</td>
            <td><input type='text' name='password'></td>
        </tr>
        <tr>
            <td>birthday</td>
            <td><input type='text' name='birthday'></td>
        </tr>

        <tr>
            <td>gender</td>
            <td>

                <select name='gender'>
                    <option value='1' selected>男
                    <option value='2'> 女
                </select></td>
        </tr>

        <tr>
            <td>email</td>
            <td><input type='text' name='email'></td>
        </tr>
        <tr>
            <td colspan='2'><input type='submit'></td>
        </tr>

    </table>


</form>

</body>
</html>

8.3 修改

UserServlet中toEdit方法

java
    private void toEdit(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
        String id = request.getParameter("id");

        User user = userDao.queryById(id);
        request.setAttribute("user",user);
        
        request.getRequestDispatcher("user/user_edit.jsp").forward(request,response);
    }

user_edit.jsp

html
<%@ page import="com.neuedu.entity.User" %>
<%@ page import="java.text.SimpleDateFormat" %><%--
  Created by IntelliJ IDEA.
  User: root
  Date: 2020/12/13
  Time: 11:54
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>


<%
    User user = (User) request.getAttribute("user");

    String bir = "";
    if (user.getBirthday() != null) {
        bir = new SimpleDateFormat("yyyy-MM-dd").format(user.getBirthday());
    }

    String gender = "1";
    if (user.getGender() != null && "".equals(user.getGender())) {
        gender = user.getGender();
    }


%>
<form method='post' action='user?type=edit'>
    <input type='hidden' name='id' value='<%=user.getId() %>'>
    <h3>用户添加</h3>
    <table width='100%' border='1'>
        <tr>
            <td>username</td>
            <td><input type='text' name='username' value='<%=user.getUsername() %>'></td>
        </tr>
        <tr>
            <td>displayname</td>
            <td><input type='text' name='displayname' value='<%=user.getDisplayname() %>'></td>
        </tr>
        <tr>
            <td>password</td>
            <td><input type='text' name='password' value='<%=user.getPassword() %>'></td>
        </tr>
        <tr>
            <td>birthday</td>
            <td><input type='text' name='birthday' value='<%=bir %>'></td>
        </tr>

        <tr>
            <td>gender</td>
            <td>

                <select name='gender'>
                    <option value='1' <%=("1".equals(gender) ? "selected" : "") %> >男
                    <option value='2' <%=("2".equals(gender) ? "selected" : "") %> >女
                </select></td>
        </tr>

        <tr>
            <td>email</td>
            <td><input type='text' name='email' value='<%=user.getEmail() %>'></td>
        </tr>
        <tr>
            <td colspan='2'><input type='submit'></td>
        </tr>

    </table>


</form>


</form>

</body>
</html>

Released under the MIT License.