01_05 JSP基礎文法之實戰(資料庫驗證登入頁面)

來源:互聯網
上載者:User

標籤:資料庫連接

使用者登入程式實現(JSP+JDBC)

   使用者登入操作必然都儲存在資料表中,使用者輸入使用者名稱和密碼,進行驗證。若輸入正確,則登入成功,若不正確則登入失敗。

一、資料表建立

netstart mysql     啟動mysql服務

mysql–uroot –pmysqladmin    進入mysql

showdatabases;       查看資料庫

 

/*=======使用MLDN資料庫=========*/

USEmldn;

/*=======刪除user資料表=========*/

DROPTABLE IF EXISTS user;

/*=======建立user資料表=========*/

CREATETABLE user(

    userid     VARCHAR(30)       PRIMARY KEY,

    name       VARCHAR(30)       NOT NULL,

    password   VARCHAR(20)       NOT NULL

);

/*=======插入測試資料=========*/

INSERTINTO user(userid, name, password) VALUES("admin", "admin","admin");

 

二、頁面設計

Login.htm  提供使用者登入表單

<html><head><title>login</title></head><body><center><h1>登陸操作</h1><hr><form action="login_check.jsp" method="post"><table border="1"><tr><td colspan="2">使用者登陸</td></tr><tr><td>登陸ID:</td><td><input type="text" name="id"></td></tr><tr><td>登陸密碼:</td><td><input type="password" name="password"></td></tr><tr><td colspan="2"><input type="submit" value="登陸"><input type="reset" value="重設"></td></tr></table></form></center></body></html>

Login_check.jsp   登入檢查頁面,使用者名稱及密碼正確則跳轉成功頁面,否則登入失敗頁面。

<%@page contentType="text/html" pageEncoding="GBK"%><%@ page import="java.sql.*"%><html><head><title>login</title></head><body><center><h1>登陸操作</h1><hr><%!// 定義若干個資料庫的串連常量public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;public static final String DBURL = "jdbc:mysql://localhost:3306/mldn" ;public static final String DBUSER = "root" ;public static final String DBPASS = "mysqladmin" ;%><%Connection conn = null ;// 資料庫連接PreparedStatement pstmt = null ;// 資料庫預先處理操作ResultSet rs = null ;// 查詢要處理結果集boolean flag = false ;// 儲存標記String name = null ;// 儲存真實姓名%><%try{%><%Class.forName(DBDRIVER) ;conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;String sql = "SELECT name FROM user WHERE userid=? AND password=?" ;pstmt = conn.prepareStatement(sql) ;pstmt.setString(1,request.getParameter("id")) ;pstmt.setString(2,request.getParameter("password")) ;rs = pstmt.executeQuery() ;// 查詢if(rs.next()){// 如果有資料,則可以執行flag = true ;//  表示登陸成功name = rs.getString(1) ;}%><%}catch(Exception e){e.printStackTrace() ;}finally{try{rs.close() ;pstmt.close() ;conn.close() ;} catch(Exception e){}}%><%if(flag){// 登陸成功%><jsp:forward page="login_success.jsp"><jsp:param name="uname" value="<%=name%>"/></jsp:forward><%} else {// 登陸失敗%><jsp:forward page="login_failure.htm"/><%}%></center></body></html>

Login_sucess.jsp  成功頁面

<%@page contentType="text/html" pageEncoding="GBK"%><html><head><title>login</title></head><body><center><h1>登陸操作</h1><h2>登陸成功</h2><h2>歡迎<font color="red"><%=request.getParameter("uname")%></font>光臨!</h2></center></body></html>

Login_failure.htm 失敗頁面

<html><head><title>login</title></head><body><center><h1>登陸操作</h1><h2>登陸失敗,請重新<a href="login.htm">登陸</a>!</h2></center></body></html>



以上內容參考JAVAWEB開發實戰經典(名師講壇)


01_05 JSP基礎文法之實戰(資料庫驗證登入頁面)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.