servlet additions and deletions to change search demo (a) Registration and Login

Project structure

Jsp check deletions front page change using a user input or data acquisition operation in a browser, using a servlet process, by calling jdbc database, thereby completing the user's requirements.

registered:

  userregister.jsp

 1 <%@ page language="java" contentType="text/html; charset=utf-8"
 2     pageEncoding="utf-8"%>
 3 <!DOCTYPE html>
 4 <html>
 5 <head>
 6 <meta charset="utf-8">
 7 <title>用户注册</title>
 8 </head>
<9 body>
10     
11     <form action="userregister" method="post">
12             <table align = "center" border="1" style="border-collapse: collapse;">
13                 <tr>
14                     <td colspan="2">用户注册</td>
15                 </tr>
16                 <tr>
17                     <td>>td</Username:
18                     <td><input type="text" name="userName" /></td>
19                 </tr>
20                 <tr>
21                     <td>密码:</td>
22                     <td><input type="password" name="userPassword" /></td>
23                 </tr>
24                 <tr>
25                     <td class="tdstyle" colspan="2">
26                         <input type="submit" value="注册" />
27                     </td>
28                 </tr>
29             </table>
30     </form>    
31     
32 </body>
33 </html>

userlogin.jsp

 1 <%@ page language="java" contentType="text/html; charset=utf-8"
 2     pageEncoding="utf-8"%>
 3 <!DOCTYPE html>
 4 <html>
 5 <head>
 6 <meta charset="ISO-8859-1">
 7 <title>登录页面</title>
 8 </head>
<9 body>
10 
11      <form action="login" method="post">
12           <p>用户名: <input type="text" name="username" /></p>
13           <p>&nbsp;&nbsp;&nbsp;&nbsp;码: <input type="password" name="password" /></p>
14           <input type = "submit" name="login" value ="登录"/>
15       </form>
16 
17 </body>
18 </html>

 

ServletUserRegister.java

 1 package servlet;
 2 
 3 import java.io.IOException;
 4 import java.sql.SQLException;
 5 
 6 import javax.servlet.ServletException;
 7 import javax.servlet.http.HttpServlet;
 8 import javax.servlet.http.HttpServletRequest;
 9 import javax.servlet.http.HttpServletResponse;
10 
11 import dao.UserDao;
12 import vo.UserEmp;
13 
14 public class ServletUserRegister extends HttpServlet{
15 
16     public void doPost(HttpServletRequest request,HttpServletResponse response) throws IOException, ServletException {
17         
18         request.setCharacterEncoding("utf8");
19         response.setCharacterEncoding("utf8");
20         
21         //获取表单中的username,password
22         String username = request.getParameter("userName");
23         String password = request.getParameter("userPassword");
24         
25         //数据存入VO
26         UserEmp useremp = new UserEmp();
27          useremp.setUsername (username);
 28          useremp.setPassword (password);
 29          
30          // instantiate operation of the database object 
31 is          UserDao userDao = new new UserDao ();
 32          // call the method of increasing the user 
33 is          the try {
 34 is              userDao.insert (useremp );
 35          } the catch (SQLException E) {
 36              e.printStackTrace ();
 37 [          }
 38 is          
39          request.getRequestDispatcher ( "/ userLogin.jsp" ) .forward (Request, Response);
 40          
41 is      }
 42 is     
43 }

Take the input data from the form, stored in the database, the page redirects to the login page.

ServletUserLogin.java

 1 package servlet;
 2 
 3 import java.io.IOException;
 4 import java.sql.SQLException;
 5 
 6 import javax.servlet.ServletException;
 7 import javax.servlet.http.HttpServlet;
 8 import javax.servlet.http.HttpServletRequest;
 9 import javax.servlet.http.HttpServletResponse;
10 
11 import dao.UserDao;
12 import vo.UserEmp;
13 
14 public class ServletUserLogin extends HttpServlet {
15     
16     @Override
17     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException, ServletException {
18         
19         req.setCharacterEncoding("utf8");
20         resp.setCharacterEncoding("utf8");
21         
22         String username = req.getParameter("username");
23         String password = req.getParameter("password");
24         
25         UserEmp userEmp = new UserEmp();
26         userEmp.setUsername(username);
27         userEmp.setPassword(password);
28         
29         UserDao dao = new UserDao();
30         
31         boolean flag = false;
32         try {
33             flag = dao.login(userEmp);
34         } catch (SQLException e) {
35             e.printStackTrace();
36         }
37         
38         if(flag)
39             req.getRequestDispatcher("/userlist.jsp").forward(req, resp);
40         else
41             req.getRequestDispatcher("/userlogin.jsp").forward(req, resp);
42         
43     }
44     
45 }

Get user input data from the browser, with the underlying database data comparison, if the username and password are equal then the page to list page, if different from the current login page refresh

UserDao.java

 1 package dao;
 2 
 3 import java.sql.Connection;
 4 import java.sql.PreparedStatement;
 5 import java.sql.ResultSet;
 6 import java.sql.SQLException;
 7 import java.sql.Statement;
 8 
 9 import vo.UserEmp;
10 
11 public class UserDao {
12 
13     public boolean login(UserEmp userEmp) throws SQLException {
14         
15         Connection connection = dbmanage.Util.getConnection();
16         Statement statement = connection.createStatement();
17         
18         String sql = "SELECT user_name,user_pawd FROM user_emp ";
19         ResultSet rs = statement.executeQuery(sql);
20         
21         String username = null;
22         String password = null;
23         
24         while(rs.next()) {
25             username = rs.getString("user_name");
26             password = rs.getString("user_pawd");
27             
28             if(username.equals(userEmp.getUsername()) && password.equals(userEmp.getPassword())) {
29                 return true;
30             }
31             
32         }
33         
34         dbmanage.Util.closeDB(statement, connection, rs);
35         
36         return false;
37     }
38     
39     public void delete(UserEmp userEmp) {
40         
41     }
42     
43     public void update(UserEmp userEmp) {
44         
45     }
46     
47     public void insert(UserEmp userEmp) throws SQLException {
48         
49         Connection connection = dbmanage.Util.getConnection();
50         
51         String sql = "INSERT INTO user_emp (user_name,user_pawd) VALUES(?,?)";
52         
53         PreparedStatement ps = connection.prepareStatement(sql);
54         ps.setString(1, userEmp.getUsername());
55         ps.setString(2, userEmp.getPassword());
56         
57         ps.executeUpdate();
58         
59         dbmanage.Util.closeDB(ps, connection);
60         
61     }
62     
63 }

Tools: Call database

Util.java

 1 package dbmanage;
 2 
 3 import java.sql.Connection;
 4 import java.sql.DriverManager;
 5 import java.sql.ResultSet;
 6 import java.sql.SQLException;
 7 import java.sql.Statement;
 8 
 9 public class Util {
10 
11     private static String driver = "com.mysql.jdbc.Driver";
12     private static String url = "jdbc:mysql://localhost:3306/my_db?charaterEncoding=utf-8";
13     private static String username = "root";
14     private static String password = "123456";
15     
16     public static Connection getConnection() throws SQLException {
17         
18         Connection con = null;
19         
20         try {
21             Class.forName(driver);
22             con = DriverManager.getConnection(url, username, password);
23         } catch (ClassNotFoundException e) {
24             e.printStackTrace();
25         }
26         
27         return con;
28         
29     }
30     
31     public static void closeDB(Statement statement,Connection connection,ResultSet resultSet) {
32         try {
33             statement.close();
34             resultSet.close();
35             connection.close();
36         } catch (SQLException e) {
37             e.printStackTrace();
38         }
39     }
40     
41     public static void closeDB(Statement statement,Connection connection) {
42         try {
43             statement.close();
44             connection.close();
45         } catch (SQLException e) {
46             e.printStackTrace();
47         }
48     }
49     
50 }

vo: corresponds to a database table by creating an object data to be stored

UserEmp.java

 1 package vo;
 2 
 3 public class UserEmp {
 4     
 5     private String username;
 6     private String password;
 7     
 8     public String getUsername() {
 9         return username;
10     }
11     public void setUsername(String username) {
12         this.username = username;
13     }
14     public String getPassword() {
15         return password;
16     }
17     public void setPassword(String password) {
18         this.password = password;
19     } 
20     
21 }

web.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <web-app version="2.5" 
 3     xmlns="http://java.sun.com/xml/ns/javaee" 
 4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 5     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
 6     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
 7       
 8       <!-- 登录 -->
 9       <servlet>
10           <servlet-name>UserLogin</servlet-name>
11           <servlet-class>servlet.ServletUserLogin</servlet-class>
12       </servlet>
13       <servlet-mapping>
14           <servlet-name>UserLogin</servlet-name>
15           <url-pattern>/login</url-pattern>
16       </servlet-mapping>
17       
18       <!-- 注册 -->
19     <servlet>
20         <servlet-name>UserRegister</servlet-name>
21           <servlet-class>servlet.ServletUserRegister</servlet-class>
22     </servlet>
23     <servlet-mapping>
24           <servlet-name>UserRegister</servlet-name>
25         <url-pattern>/userregister</url-pattern>
26  </servlet-mapping>
27         
28 </web-app>

Item Test: jsp files in the browser address bar to access project

 

Guess you like

Origin www.cnblogs.com/lsy-lsy/p/10953546.html