jsp+servlet+Tomcat+mysql实现用户注册、登录、查看、修改实例之——信息查看

学习javaWeb,首先要学习基础的jsp,servlet,弄通了机制然后就得心应手了。我们来实现一个简单的实例来学习。


我们的任务有:1.数据库及表创建

       2.实现用户注册

       3.实现用户登录

       4.实现用户列表显示

       5.实现用户删除

       6.实现用户信息查看

       7.实现用户信息修改


 上节实现了用户删除,本节来实现用户信息的查看。

六、用户信息查看

用户信息操作是一浏览用户信息详情的操作,通过点击用户列表中的用户名超链接,会弹出新的页面显示详尽的数据。

需要实现:

      1.跳转到用户查看

      2.数据库操作层方法

      3.userview.jsp页面 

      4.跳转回信息列表

示意图如下:

  点击返回之后,重新跳回用户信息列表页面。

1.servlet跳转  

在信息列表生成的时候用下面的语句来生成超链接:

1 <td><a href="servlet/ServletViewUser?userId=<%=user.getUserId() %>"><%=user.getUserName()%></a></td>

  (注:页面详细代码,请参见:用户列表显示页面代码

  用超链接的方式提交给ServletViewUser.java 中的doGet(),并且传递过去userId

  调用UserDaoselectOneUserInfo()方法,将查询结果返回给userview.jspServletViewUser.javadoGet()方法如下:

 1 public void doGet(HttpServletRequest request, HttpServletResponse response)
 2             throws ServletException, IOException {
 3 
 4         int userId = Integer.parseInt(request.getParameter("userId"));
 5         UserDao userDao = new UserDao();
 6         UserVo user = userDao.selectOneUserInfo(userId);
 7         
 8         request.setAttribute("user", user);
 9         request.getRequestDispatcher("/userview.jsp").forward(request, response);
10     }

2.数据库操作层方法

  UserDao中有一个selectOneUserInfo()方法,用以根据userId,查询一条用户信息,其代码如下:

 1 public UserVo selectOneUserInfo(int userId) {
 2         // 查看单一用户信息
 3         Dbmanage dbmanage = new Dbmanage();
 4         Connection conn = null;
 5         Statement sta = null;
 6         ResultSet rs = null;
 7         UserVo user = null;
 8 
 9         try {
10             conn = dbmanage.initDB();
11             sta = conn.createStatement();
12             String sql = "SELECT * FROM userTable WHERE user_id = " + userId;
13             rs = sta.executeQuery(sql);
14             while (rs.next()) {
15                 user = new UserVo();
16                 user.setUserId(rs.getInt("user_id"));
17                 user.setUserName(rs.getString("user_name"));
18                 user.setUserPassword(rs.getString("user_password"));
19                 user.setUserProvince(rs.getString("user_province"));
20                 user.setUserCity(rs.getString("user_city"));
21                 user.setUserSex(rs.getString("user_sex"));
22                 user.setUserHobby(rs.getString("user_hobby"));
23                 user.setUserDescribe(rs.getString("user_describe"));
24             }
25 
26         } catch (SQLException e) {
27 
28             e.printStackTrace();
29         } finally {
30             // 执行完关闭数据库
31             dbmanage.closeDB(rs, sta, conn);
32         }
33         return user;
34 
35     }

  该方法返回user对象给ServletViewUser.java,由其将信息转发给userview.jsp

3.userview.jsp页面

  userview.jsp页面用于显示详细的个人信息,页面代码如下:

 1 <form name="myform" action = "servlet/ServletUserReturn" method="post">
 2     <table border = "1" align = "center" style="border-collapse:collapse;">
 3         <tr>
 4             <td colspan="2">用户查看</td>    
 5         </tr>
 6         <tr>
 7             <td>用户名</td>
 8             <td><%=user.getUserName() %></td>    
 9         </tr>
10         <tr>
11             <td>密 码</td>
12             <td><%=user.getUserPassword() %></td>    
13         </tr>
14         <tr>
15             <td>地 址</td>
16             <td><%=user.getUserProvince() %><%=user.getUserCity() %></td>
17         </tr>
18         <tr>
19             <td>性 别</td>
20             <td><%=user.getUserSex() %></td>
21             
22         </tr>
23         <tr>
24             <td>爱 好</td>
25             <td><%=user.getUserHobby() %></td>    
26         </tr>
27         <tr>
28             <td style="height:100px;"><br/><br/><br/></td>
29             <td><%=user.getUserDescribe() %></td>    
30         </tr>
31         <tr>
32             <td colspan="2"><input type = "submit" value = "返回" /></td>
33         </tr>
34     </table>
35     </form>

4.servlet跳回信息列表  

当点击返回的时候,会跳到ServletUserReturn.java ,重新跳转到userlist.jsp页面中。

1 public void doPost(HttpServletRequest request, HttpServletResponse response)
2             throws ServletException, IOException {
3 
4         UserDao userDao = new UserDao();
5 
6         ArrayList<UserVo> list = userDao.selectNotDeleteList();
7         request.setAttribute("list", list);
8         request.getRequestDispatcher("/userlist.jsp").forward(request, response);
9     }

到这里,用户信息的查看和返回就实现了。


链接导航     1.数据库及表创建

       2.实现用户注册

       3.实现用户登录

       4.实现用户列表显示

       5.实现用户删除

       6.实现用户信息查看

       7.实现用户信息修改


 

posted on 2013-05-18 19:17  乐山乐水 若愚若怯  阅读(7992)  评论(0编辑  收藏  举报

导航