標簽: 軟件 |
共同學習和進步:一個簡單的用戶登錄和注冊系統。
代碼比較簡單,希望對剛開始學習的同學有所幫助。
具體代碼如下:
*******用戶注冊頁面
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<html>
<head>
<title>用戶注冊頁面</title>
</head>
<body>
<center>
<h1>用戶注冊頁面</h1><hr/>
<form action="FristJsp_for.jsp" method="get">
用戶名:<input type="text" name="userId"/><br/>
密碼:<input type="password" name="password"> <br/>
<input type="submit" value="確定"/>
<input type="reset" value="重置">
</form>
</center>
</body>
</html>
******注冊成功頁面
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<center>
<h1>恭喜你,注冊成功!!!!三秒后跳轉登錄頁面!!!!</h1>
<%
response.setHeader("Refresh","3;url=login.jsp");
%>
</center>
*******失敗頁面
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<center>
<h2>該用戶已存在!!!!請從新<a href="login_for.jsp">注冊</a></h2>
</center>
*******登錄頁面
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<html>
<head>
<title>用戶登錄頁面</title>
</head>
<body>
<center>
<h1>用戶登錄頁面</h1><hr/>
<form action="FristJsp_1.jsp" method="get">
用戶名:<input type="text" name="userId"/><br/>
密碼:<input type="password" name="password"> <br/>
<input type="submit" value="登錄"/>
<input type="reset" value="重置">
<br/>
<br/>
<h2>如果你是第一次登錄請先<a href="login_for.jsp"><h1>注冊</h1></a></h2>
</form>
</center>
</body>
</html>
*******登錄失敗頁面
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<center>
<h1>錯誤的用戶名和密碼!!!!</h1>
<br/><h3>請<a href="login_for.jsp">注冊</a>后在登陸!!!</h3>
</center>
*******登錄成功頁面
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<center>
<h1>登錄成功!!!!</h1>
</center>
*******控制登錄頁面的轉發
<%@ page language="java" import="java.util.*,java.sql.*,com.mysql.jdbc.Driver" pageEncoding="utf-8"%>
<jsp:useBean id="test" scope="page" class="com.jsp.ch08.FristJavaBean">
<jsp:setProperty name="test" property="*"/>
</jsp:useBean>
<%
String userId = test.getUserId();
String password = test.getPassword();
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
String connectionUrl = "jdbc:mysql://localhost/class?user=root&password=admin";
conn = DriverManager.getConnection(connectionUrl);
String sql = "select * from login where userId=? and password=? ";
pstmt = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
pstmt.setString(1,userId);
pstmt.setString(2,password);
rs = pstmt.executeQuery();
if(rs.next()){
response.sendRedirect("login_success.jsp");
}else{
//rs.moveToInsertRow();
//rs.updateString("userId",test.getUserId());
//rs.updateString("password",test.getPassword());
//rs.updateRow();
//rs.insertRow();
response.sendRedirect("login_fai.jsp");
}
}catch(SQLException e){
e.printStackTrace();
}finally{
if(rs != null){
try{
rs.close();
}catch(SQLException sqlEx){}
rs = null;
}
if(pstmt != null){
try{
pstmt.close();
}catch(SQLException sqlEx){}
pstmt = null;
}
if(conn != null){
try{
conn.close();
}catch(SQLException sqlEx){}
conn = null;
}
}
%>
********控制注冊頁面的轉發
代碼同登錄轉發頁面 讓后將注釋的代碼取消就可以,讓后轉發頁面改成注冊成功和失敗頁面,不多做解釋。
********JavaBean
package com.jsp.ch08;
public class FristJavaBean {
private int id;
private String userId;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
******數據庫
只有userId 和 password 相信能做出來