jsp中連接數據庫實現注冊及登錄(練習)


 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>登錄頁面</title>
 8 </head>
 9 <body>
10 <form action="Test1Servlet" method="post">
11 賬戶<input type="text" name="name1"><br>
12 密碼<input type="password" name="password1"><br>
13 <input type="submit" value="登錄">
14 </form>
15 <br>
16 <a href="Test2.jsp">新用戶注冊</a>
17 </body>
18 </html>
 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>注冊頁面</title>
 8 </head>
 9 <body>
10 <form action="Test2Servlet" method="post">
11 賬戶<input type="text" name="name2"><br>
12 密碼<input type="password" name="password2"><br>
13 確認密碼<input type="password" name="password3"><br>
14 <input type="submit" value="提交">
15 </form>
16 </body>
17 </html>
 1 package hanqi;
 2 
 3 import java.io.IOException;
 4 import javax.servlet.Filter;
 5 import javax.servlet.FilterChain;
 6 import javax.servlet.FilterConfig;
 7 import javax.servlet.ServletException;
 8 import javax.servlet.ServletRequest;
 9 import javax.servlet.ServletResponse;
10 
11 public class TestFilter implements Filter
12 {
13     public TestFilter() 
14     {
15         
16     }
17 
18     public void destroy()
19     {
20         
21     }
22 
23     public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException
24     {    
25         response.setContentType("text/html");
26         response.setCharacterEncoding("UTF-8");
27         request.setCharacterEncoding("UTF-8");
28         chain.doFilter(request, response);
29     }
30 
31     public void init(FilterConfig fConfig) throws ServletException
32     {
33     
34     }
35 }
 1 package hanqi;
 2 
 3 import java.io.IOException;
 4 import java.sql.*;
 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 org.apache.jasper.tagplugins.jstl.core.Out;
12 
13 public class Test1Servlet extends HttpServlet
14 {
15     private static final long serialVersionUID = 1L;
16  
17     public Test1Servlet()
18     {
19         super();
20     }
21     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
22     {
23         String a=request.getParameter("name1");
24         String b=request.getParameter("password1");
25         try
26         {
27         Class.forName("oracle.jdbc.driver.OracleDriver");
28         String strUrl = "jdbc:oracle:thin:@localhost:1521:ORCL";
29         Connection conn = DriverManager.getConnection(strUrl, "text", "123456");
30         Statement st=conn.createStatement();
31         ResultSet rs=st.executeQuery("select * from zhanghu where zhanghao='"+a+"' and  mima='"+b+"'");
32         
33         if(rs.next())
34         {
35             if(a.equals(rs.getString("zhanghao"))&&b.equals(rs.getString("mima")))
36             {
37             response.getWriter().print("登錄成功");
38             }
39         }
40         else
41         {
42             response.getWriter().print("賬號或密碼不正確");
43             response.setHeader("refresh","2; URL=Test1.jsp");
44         }
45         
46         rs.close();
47         st.close();
48         conn.close();
49         }
50         catch(Exception e)
51         {
52             e.printStackTrace();
53             response.getWriter().print("錯誤"+e);
54             response.setHeader("refresh","3; URL=Test1.jsp");
55         }
56     }
57     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
58     {
59         doGet(request, response);
60     }
61 }
 1 package hanqi;
 2 
 3 import java.io.IOException;
 4 import java.sql.*;
 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 public class Test2Servlet extends HttpServlet
12 {
13     private static final long serialVersionUID = 1L;
14     public Test2Servlet() 
15     {
16         super();
17     }
18     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
19     {
20         String a=request.getParameter("name2");
21         String b=request.getParameter("password2");
22         String c=request.getParameter("password3");
23         
24         if(a!=null&&b!=null&c!=null)
25         {
26             if(a.equals(a.replace(" ","?"))&&b.equals(b.replace(" ","?"))&&c.equals(c.replace(" ","?")))
27             {
28                 try 
29                 {
30                     Class.forName("oracle.jdbc.driver.OracleDriver");
31                     String strUrl = "jdbc:oracle:thin:@localhost:1521:ORCL";
32                     Connection conn = DriverManager.getConnection(strUrl, "text", "123456");
33                     Statement st=conn.createStatement();
34                     ResultSet rs=st.executeQuery("select * from zhanghu");
35                     if(rs!=null&&rs.next())
36                     {
37                         if(a.equals(rs.getString("zhanghao")))
38                         {
39                             response.getWriter().print("該用戶已被注冊");
40                             response.setHeader("refresh","2; URL=Test2.jsp");
41                         }    
42                         else
43                         {
44                             if(b.equals(c))
45                             {
46                                 response.getWriter().print("注冊成功");
47                                 PreparedStatement pst=conn.prepareStatement("insert into zhanghu(zhanghao,mima)"+"values(?,?)");
48                                 pst.setString(1, a);
49                                 pst.setString(2, b);
50                                 pst.executeUpdate();
51                                 response.setHeader("refresh","2; URL=Test1.jsp");
52                             }
53                             else
54                             {
55                                 response.getWriter().print("兩次密碼不一致");
56                                 response.setHeader("refresh","2; URL=Test2.jsp");
57                             }
58                             
59                         }
60                     }
61                 } 
62                 catch (Exception e)
63                 {
64                     response.getWriter().print("錯誤"+e);
65                     e.printStackTrace();
66                 }
67             }
68             else
69             {
70                 response.getWriter().print("請檢查格式是否正確");
71                 response.setHeader("refresh","2; URL=Test2.jsp");
72             }
73         }
74         else
75         {
76             response.getWriter().print("請以正確的方式注冊賬號");
77             response.setHeader("refresh","2; URL=Test2.jsp");
78         }
79     }
80     
81     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
82     {
83         doGet(request, response);
84     }
85 
86 }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM