亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

jsp與Javabean實現登錄注冊

2024-07-21 02:52:52
字體:
來源:轉載
供稿:網友

jsp與javabean實現登錄注冊

jsp與Javabean實現登錄注冊jsp技術MySQL數據庫編程結合javabean組件實現最簡單基礎的一個注冊登錄demoJavaBean開發表示用戶信息的JavaBeanUserInfojava在Mysql數據庫中創建數據庫及相應的表格注冊用戶時執行數據庫操作的JavaBeanUserRegistjava用戶登錄時連接數據庫處理的JavaBeanUserLoginjavaJSP頁面的開發填寫用戶注冊信息的JSP頁面registerjsp用戶登錄頁面loginjsp運行結果

jsp技術+Mysql數據庫編程,結合javabean組件,實現最簡單基礎的一個注冊登錄demo

思路:首先需要登錄頁面以及相應的登錄驗證,對于未注冊用戶需要點擊注冊按鈕進行用戶信息注冊,注冊同樣需要一個注冊表單以及各個字段的驗證處理。為了簡化JavaBean中的處理和重用,我們把用戶的信息封裝成一個值對象的JavaBean,這個JavaBean只包含 用戶信息相關的屬性和這些屬性相關的getter和setter方法,我們將其命名為UserInfo.java,其次,隨著JSP技術的發展和開發技術的成熟,在JSP頁面中連接數據庫的編程方式已經很少見,雖然在JSP頁面中使用Scriptlets也可以連接數據庫,進行數據庫操作,但這樣會造成頁面難以維護等缺點,在大型項目中,這些缺點會更加突出,所以我們建議在JavaBean中連接數據庫,UserRegiste.java用來處理注冊時連接數據庫查詢事務,UserLogin.java用來處理登錄時連接數據庫插入事務。

JavaBean開發

表示用戶信息的JavaBean(UserInfo.java)

public class UserInfo { //屬性 PRivate String name; private String passWord; private String phone; //方法 public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPhone() { return phone; } public void setPhone(String phone) { this.phone = phone; }}

在Mysql數據庫中創建數據庫及相應的表格

create database jspdev;use jspdev;create table user_Info( name varchar(15), password varchar(20), phone varchar(15));

注冊用戶時執行數據庫操作的JavaBean(UserRegist.java)

import java.io.UnsupportedEncodingException;import java.sql.DriverManager;import com.mysql.jdbc.Connection;import com.mysql.jdbc.PreparedStatement;public class UserRegist { private UserInfo userInfo; private Connection con; // 獲得數據庫連接 public UserRegist() { String Classforname = "com.mysql.jdbc.Driver"; String Servanddb = "jdbc:mysql://127.0.0.1/jspdev"; String user = "root"; String pwd = "123456"; try { Class.forName(Classforname); con = (Connection) DriverManager.getConnection(Servanddb, user, pwd); } catch (Exception e) { e.printStackTrace(); } } // 設置待注冊的用戶信息 public void setUserInfo(UserInfo userInfo) { this.userInfo = userInfo; } // 進行注冊 public void regist() throws Exception { String reg = "insert into user_Info values(?,?,?)"; try { PreparedStatement pstmt = (PreparedStatement) con.prepareStatement(reg); pstmt.setString(1, transFormat(userInfo.getName())); pstmt.setString(2, userInfo.getPassword()); pstmt.setString(3, userInfo.getPhone()); pstmt.execute(); } catch (Exception e) { e.printStackTrace(); throw e; } } String transFormat(String s) { try { byte[] b = s.getBytes("iso-8859-1"); s = new String(b); } catch (UnsupportedEncodingException e) { System.out.println(e.toString()); } return s; }}

用戶登錄時連接數據庫處理的JavaBean(UserLogin.java)

import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;import com.mysql.jdbc.Connection;public class UserLogin { private UserInfo userInfo; private Connection con; // 獲得數據庫連接 public UserLogin() { String Classforname = "com.mysql.jdbc.Driver"; String Servanddb = "jdbc:mysql://127.0.0.1/jspdev"; String user = "root"; String pwd = "123456"; try { Class.forName(Classforname); con = (Connection) DriverManager.getConnection(Servanddb, user, pwd); } catch (Exception e) { e.printStackTrace(); } } // 獲取已經注冊的用戶信息 public void setUserInfo(UserInfo userInfo) { this.userInfo = userInfo; } // 進行登錄查詢驗證 public boolean login(String name, String password) throws Exception { try { Statement stmt = con.createStatement(); ResultSet rst = stmt.executeQuery( "select name, password from user_Info where name= '" + name + "' and password='" + password + "'"); if (rst.next()) { rst.close(); stmt.close(); con.close(); return false; } else { rst.close(); stmt.close(); con.close(); return true; } } catch (Exception e) { e.printStackTrace(); } return false; }}

JSP頁面的開發

填寫用戶注冊信息的JSP頁面(register.jsp)

<%@page import="org.apache.jasper.tagplugins.jstl.core.Out"%><%@ page language="java" contentType="text/html; charset=gb2312"%><%@ page import="java.sql.*,java.io.*"%><jsp:useBean id="info" class="webUser.UserInfo" scope="request"> <jsp:setProperty property="*" name="info" /></jsp:useBean><jsp:useBean id="regist" class="webUser.UserRegist" scope="request"> <jsp:setProperty property="*" name="regist" /></jsp:useBean><%! String transFormat(String s){ try{ byte []b=s.getBytes("iso-8859-1"); s=new String(b); } catch(UnsupportedEncodingException e){ System.out.println(e.toString()); } return s;}%><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>登錄首頁</title><script type="text/Javascript"> function register() { if (document.registerform.name.values == "") { window.alert("請輸入用戶名稱"); document.registerform.name.focus(); return false; } if (document.registerform.password.value == "") { window.alert("請輸入密碼"); document.registerform.password.focus(); return false; } if (document.registerform.repassword.value == "") { window.alert("請確認密碼"); document.registerform.repassword.focus(); return false; } if (document.registerform.password.value != document.registerform.repassword.value) { window.alert("兩次密碼不同,請重新輸入"); document.registerform.repassword.focus(); return false; } if (document.registerform.phone.value == "") { window.alert("請輸入電話號碼"); document.registerform.phone.focus(); return false; } return true; }</script></head><body bgcolor=cyan> <font size=4> <% /* request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); response.setContentType("text/html; charset=utf-8"); */ String name = request.getParameter("name"); String password = request.getParameter("password"); String repassword = request.getParameter("repassword"); String phone = request.getParameter("phone"); if (name == null) { name = ""; if (password == null) { password = ""; if (repassword == null) { repassword = ""; if (phone == null) { phone = ""; } } } } boolean isSuccessRegist = false; if (password.equals(repassword) && !name.equals("") && !password.equals("") && !repassword.equals("") && !phone.equals("")) { name=transFormat(name); regist.setUserInfo(info); regist.regist(); isSuccessRegist = true; } %> <form action="" method=post name=registerform> <table width="100%" height="500" align="center"> <tr> <td> <div heigh="100%" align="center"> <table border="0" align="center"> <tr> <td>用戶名:</td> <td><input type="text" name="name"></td> </tr> <tr> <td>密碼:</td> <td><input type="password" name="password"></td> </tr> <tr> <td>確認密碼:</td> <td><input type="password" name="repassword"></td> </tr> <tr> <td>手機號碼:</td> <td><input type="text" name="phone"></td> </tr> </table> <p align="center"> <a href="login.jsp"><input type="button" value="登錄" name="button"></a> <input type="submit" value="注冊" name="regist" onclick="register()"> </p> <font size=4 color=red> <% if(isSuccessRegist){ out.println(name); out.println("注冊成功"); } %> </font> </div> </td> </tr> </table> </form> </font></body></html>

用戶登錄頁面(login.jsp)

<%@ page language="java" contentType="text/html; charset=gb2312"%><jsp:useBean id="info" class="webUser.UserInfo" scope="request"> <jsp:setProperty property="*" name="info" /></jsp:useBean><jsp:useBean id="login" class="webUser.UserLogin" scope="request"> <jsp:setProperty property="*" name="login" /></jsp:useBean><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>登錄首頁</title><script type="text/javascript"> function login() { if (document.registerform.name.values == "") { window.alert("請輸入用戶名稱"); document.registerform.name.focus(); return false; } if (document.registerform.password.value == "") { window.alert("請輸入密碼"); document.registerform.password.focus(); return false; } return true; }</script></head><body bgcolor=cyan> <font size=4> <% String name = request.getParameter("name"); String password = request.getParameter("password"); if (name == null) { name = ""; if (password == null) { password = ""; } } boolean isSuccessLogin = false; if (!name.equals("") && !password.equals("")) { login.setUserInfo(info); isSuccessLogin = login.login(name,password); if (isSuccessLogin) { response.sendRedirect("welcome.jsp"); } isSuccessLogin = false; } %> <form action="" method=post name=form> <table width="100%" height="500" align="center"> <tr> <td> <div heigh="100%" align="center"> <table border="0" align="center"> <tr> <td>用戶名:</td> <td><input type="text" name="name"></td> </tr> <tr> <td>密碼:</td> <td><input type="password" name="password"></td> </tr> </table> <p align="center"> <input type="submit" value="登錄" name="login" onclick="login()"> <a href="register.jsp"><input type="button" value="注冊" name="button"></a> </p> </div> </td> </tr> </table> </form> </font></body></html>### 登錄成功跳轉頁面(Main.jsp) ###<%@ page language="java" contentType="text/html; charset=gb2312"%><html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>主頁面</title></head><body bgcolor=cyan><font size=6 color=red><div height="100%" align="center" valign="center"> <br><br>歡迎來到本頁面!?。?lt;/div></font></body></html>

運行結果

登錄頁面

注冊頁面

注冊驗證

注冊成功

查詢注冊結果


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产不卡精品视男人的天堂| 亚洲人成在线观看网站高清| 亚洲国产精品中文| 成人精品一区二区三区电影黑人| 96精品久久久久中文字幕| 欧美激情欧美激情在线五月| 九九九久久久久久| 国产精品美女主播| 精品久久久久久亚洲精品| 精品综合久久久久久97| 中文字幕久精品免费视频| 成人福利在线视频| 91青草视频久久| 亚洲精品av在线| 在线日韩中文字幕| 久久人人看视频| 日韩精品极品在线观看播放免费视频| 日本一本a高清免费不卡| 欧美在线视频一区二区| 黑人精品xxx一区| 国产精品视频免费观看www| 欧美国产日韩视频| 亚洲区一区二区| 欧美最猛性xxxxx(亚洲精品)| 日韩二区三区在线| 日韩av中文字幕在线| 亚洲欧洲成视频免费观看| 国产91色在线|免| 亚洲最大的av网站| 欧美成人黑人xx视频免费观看| 亚洲美女中文字幕| 亚洲人成77777在线观看网| 超碰97人人做人人爱少妇| 久久免费国产视频| 日韩精品极品毛片系列视频| 亚洲精品国精品久久99热| 日韩电影免费观看在线观看| 国产自产女人91一区在线观看| 欧美精品www在线观看| 成人福利在线视频| 97在线观看免费高清| 亚洲色图校园春色| 日韩中文字幕免费| 91美女高潮出水| 亚洲一区二区福利| 国产日韩欧美中文在线播放| 福利视频一区二区| 国产精品爽爽ⅴa在线观看| 国产日韩欧美在线视频观看| 亚洲精品第一国产综合精品| 亚洲欧美中文在线视频| 国产91精品久久久久久久| 欧美激情在线播放| 26uuu另类亚洲欧美日本老年| 97色在线观看| 最近的2019中文字幕免费一页| 在线日韩av观看| 精品成人av一区| 一区二区三区四区精品| 国产精品日韩欧美大师| 91wwwcom在线观看| 国产精品免费视频xxxx| 国产精品福利在线观看| 一区二区三区无码高清视频| 色多多国产成人永久免费网站| 日韩免费观看网站| 日韩在线免费视频| 久久91精品国产91久久跳| 亚洲国产精品va在线看黑人| 国产女人精品视频| 亚洲专区国产精品| 欧美人在线观看| 色综合久久88色综合天天看泰| 亚洲精品免费在线视频| 欧美性videos高清精品| 成人乱色短篇合集| 亚洲第一男人天堂| 欧美精品videos另类日本| 5252色成人免费视频| 久久久人成影片一区二区三区| 一区二区三区高清国产| 日韩中文字幕亚洲| 亚洲自拍高清视频网站| 成人精品一区二区三区电影免费| 亚洲欧美国产视频| 美女福利精品视频| 国产精品成人免费视频| 日韩欧美大尺度| 欧美性生交xxxxx久久久| 疯狂欧美牲乱大交777| 精品久久久久久电影| 91精品在线观看视频| 国内外成人免费激情在线视频| 亚洲成av人片在线观看香蕉| 国产亚洲精品久久久久久777| 中国日韩欧美久久久久久久久| 韩国v欧美v日本v亚洲| 国产精品久久久久91| 亚洲国产私拍精品国模在线观看| 日韩精品久久久久| 日韩中文字幕视频在线| 一区二区欧美在线| 国产日韩欧美在线看| 亚洲精品视频中文字幕| 亚洲国产精品成人av| 亚洲成人精品久久久| 欧美综合国产精品久久丁香| 久久国产精品影视| 欧美成人午夜激情在线| 2019亚洲日韩新视频| 精品视频在线播放免| 久久91亚洲精品中文字幕奶水| 一区二区三区回区在观看免费视频| 亚洲综合成人婷婷小说| 久久精品视频亚洲| 亚洲国产日韩欧美综合久久| 欧美xxxx18国产| 日韩精品中文字幕视频在线| www.精品av.com| 久久欧美在线电影| 国产午夜精品视频免费不卡69堂| 亚洲毛茸茸少妇高潮呻吟| 中文字幕欧美日韩精品| 国产精品高清在线| 精品高清美女精品国产区| 国产精品免费小视频| 亚洲成人黄色网址| 97视频在线观看成人| 色多多国产成人永久免费网站| 色综合久久中文字幕综合网小说| 亚洲va久久久噜噜噜久久天堂| 最近2019好看的中文字幕免费| 亚洲精品国产suv| 国内免费久久久久久久久久久| 97国产成人精品视频| 91国产美女在线观看| 国产69精品久久久久99| 一区二区三区久久精品| 国产成人一区二区在线| 亚洲欧美综合图区| 日韩小视频在线观看| 久久天堂av综合合色| 久久资源免费视频| 欧美大秀在线观看| 日韩电影在线观看永久视频免费网站| 97超级碰在线看视频免费在线看| 亚洲最大av网站| 中文字幕欧美日韩| 欧美日韩加勒比精品一区| 欧美寡妇偷汉性猛交| 国产精品久久一| 国产精品成人av性教育| 亚洲激情在线观看视频免费| 一区二区亚洲欧洲国产日韩| 亚洲天堂精品在线| 97国产在线观看| 伊人男人综合视频网| 国产精品一区二区久久| 国产精品视频午夜| 成人av在线亚洲| 午夜精品久久久99热福利| 亚洲欧洲一区二区三区在线观看| 日韩欧美在线播放| 久久久久久久久久久免费|