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

首頁 > 編程 > JSP > 正文

JSP+Servlet制作Java Web登錄功能的全流程解析

2024-09-05 00:22:33
字體:
來源:轉載
供稿:網友
Web頁面登陸功能包括前端的界面以及后臺的數據庫寫入,這里我們總結了JSP+Servlet制作Java Web登陸功能的全流程解析,需要的朋友可以參考下
 

0.新建web項目
首先,在MyEclipse里新建java web項目,項目名為login。此時,項目中包含一個src文件夾和一個WebRoot文件夾,以及Java Web自帶的JRE庫文件夾和J2EE庫文件夾。其中,在WebRoot文件夾下,包含了WEB-INF文件夾和一個index.jsp頁面文件。 
接下來,新建一個JSP頁面,命名為login.jsp。 
項目文件的結構如下: 

JSP,Servlet,Web登錄

 

1.設計login.jsp頁面
打開login.jsp頁面后,修改第一行的代碼為pageEncoding="utf-8",防止頁面中文出現亂碼。接下來在body部分定義form表單,用于用戶輸入用戶名和密碼。頁面代碼如下:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html>  <head> <base href="<%=basePath%>"> <title>登陸頁面</title>  </head> <body> <form action="login" method="post"> 用戶名:<input name="username" type="text" /><br/> 密碼:<input name="password" type="password" /><br/> <input type="submit" value="提交" /> </form> </body></html> 

2.新建servlet文件
接下來,在MyEclipse中新建一個loginServlet.java,并定義在包文件夾a下(包名自己決定)。文件夾目錄如下: 

JSP,Servlet,Web登錄

雙擊,打開loginServlet.java文件,在doPost方法內,通過request.getParameter()方法獲取login頁面的username和password,并通過response.sendRedirect()方法跳轉到index.jsp頁面。頁面代碼如下:

package a; import java.io.IOException; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;public class loginServlet implements javax.servlet.Servlet{  public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{ String userName = request.getParameter("username");//取得用戶名 String password = request.getParameter("password");//取得密碼 response.sendRedirect("index.jsp"); } public void destroy() {  } public ServletConfig getServletConfig() {  return null; } public String getServletInfo() {  return null; } public void init(ServletConfig arg0) throws ServletException {   } public void service(ServletRequest request, ServletResponse response)   throws ServletException, IOException {  HttpServletRequest rq = (HttpServletRequest)request;  HttpServletResponse rs = (HttpServletResponse) response;  doPost(rq,rs); }}

3.配置servlet
打開WEB-INF文件夾下的web.xml文件,通過設置這個網站的首頁為login.jsp。接下來配置servlet。頁面代碼如下:

<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5"  xmlns="http://java.sun.com/xml/ns/javaee"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee  http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <servlet><servlet-name>LoginServlet</servlet-name> <servlet-class>a.loginServlet</servlet-class> </servlet>  <servlet-mapping><servlet-name>LoginServlet</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping>  <welcome-file-list> <welcome-file>login.jsp</welcome-file> </welcome-file-list></web-app> 

 
4.測試頁面
最后看看運行效果,選擇運行,選擇某個版本的tomcat啟動。頁面效果如下: 

JSP,Servlet,Web登錄

JSP,Servlet,Web登錄

 

5.配置數據源
(1)創建數據庫

打開mysql數據庫,新建數據庫,此處命名為login數據庫,在數據庫中創建表login,并且設置username和password字段。數據庫的設計表如下: 

JSP,Servlet,Web登錄

上圖中的id作為主鍵,使得數據庫的表至少符合第二范式的要求,其中username和password字段是login表內獨有的字段,因此此表符合第三范式的要求。 
接下來在login表中填入數據,此例的數據如下: 

JSP,Servlet,Web登錄

(2)連接數據庫
在MyEclipse中連接數據庫,此處采用加載JDBC驅動的方法連接數據庫。首先下載mysql的驅動,接下來需要導入mysql的jar包到我們的項目中來,在包資源管理器中右鍵JRE系統庫,選擇構造路徑-配置構建路徑選項卡,彈出的Java構建路徑選項卡中,通過添加外部JAR(X)按鈕加載mysql.jar文件。 
  接下來,在項目中新建DBUtil.java文件,用于連接mysql數據庫。此處略去連接數據庫的原理,DBUtil.java文件的源代碼如下,請更改源代碼中的數據庫名稱和連入mysql的用戶名密碼等信息:

package a; import java.sql.*;public class DBUtil {  boolean bInited = false; //加載驅動 public void initJDBC() throws ClassNotFoundException { //加載MYSQL JDBC驅動程序 Class.forName("com.mysql.jdbc.Driver"); bInited = true; System.out.println("Success loading Mysql Driver!"); } public Connection getConnection() throws ClassNotFoundException, SQLException{ if(!bInited){ initJDBC(); } //連接URL為 jdbc:mysql//服務器地址/數據庫名 //后面的2個參數分別是登陸用戶名和密碼 Connection conn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/數據庫名","用戶名","密碼"); return conn; } public boolean loginSuccess(String userName,String password){ boolean returnValue = false; String sql = "SELECT * FROM login"; Connection conn = null; Statement stmt = null; ResultSet rs = null; try{ conn = getConnection(); stmt = conn.createStatement(); rs = stmt.executeQuery(sql); while(rs.next()){ String userNameInDB = rs.getString("username"); String passwordInDB = rs.getString("password"); if(userNameInDB.equals(userName) && passwordInDB.equals(password)){ returnValue = true; break; } } }catch (ClassNotFoundException e) { e.printStackTrace(); }catch (SQLException e) { e.printStackTrace(); } return returnValue; }}

  上文中loginSuccess()方法內,用于在數據庫中查找用戶名和密碼與傳入參數username、password匹配的情況。一旦找到,則返回true結果。

(3)修改Servlet業務邏輯
修改loginServlet.java文件的業務邏輯,在其中加入連接數據庫的語句。其中,主要的頁面跳轉邏輯寫著了doPost()方法內,修改后的doPost()方法如下:

public void doPost(HttpServletRequest request,HttpServletResponse response)  throws ServletException,IOException{ String userName = request.getParameter("username");//取得用戶名 String password = request.getParameter("password");//取得密碼 DBUtil db = new DBUtil();//構建數據庫對象 boolean canLogin = db.loginSuccess(userName, password); if(canLogin){//根據登陸情況,跳轉頁面 response.sendRedirect("index.jsp"); }else{ response.sendRedirect("login.jsp"); } }

(4)測試頁面
調試后的頁面效果如下: 

JSP,Servlet,Web登錄

JSP,Servlet,Web登錄



注:相關教程知識閱讀請移步到JSP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美性猛交xxxx偷拍洗澡| 久久久极品av| 亚洲自拍偷拍福利| 中文字幕国产亚洲| 精品亚洲一区二区三区四区五区| 一区二区三区国产在线观看| 国产成人在线播放| 91国产美女在线观看| 亚洲色图第三页| 成人国产精品久久久| 日韩久久免费电影| 国产97在线视频| 91在线国产电影| 国产精品久久久久久久久久久不卡| 国产网站欧美日韩免费精品在线观看| 国产精品网站视频| 国产成人精品综合| 中文日韩在线观看| 亚洲片av在线| 国产日韩换脸av一区在线观看| 欧美精品性视频| 国产91av在线| 91精品国产高清久久久久久| 欧美极品少妇xxxxⅹ裸体艺术| 91国产美女在线观看| 久久亚洲精品小早川怜子66| 97色在线观看免费视频| 少妇高潮久久久久久潘金莲| 韩国三级电影久久久久久| 日韩在线资源网| 欧美激情视频免费观看| 国产亚洲视频在线观看| 欧美成人免费观看| 精品久久久久久电影| 亚洲电影免费观看高清完整版在线| 97免费中文视频在线观看| 精品国产电影一区| 亚洲午夜精品视频| 成人欧美在线视频| 一区二区三区四区视频| 欧美日韩亚洲一区二| 久久久精品一区二区三区| 欧美日韩国产精品一区| 国产精品视频成人| 欧美成年人视频| 精品久久久久久久久久久久久久| 欧美国产日韩xxxxx| 久久久久久久色| 久久久极品av| 中文日韩在线观看| 国产欧美精品一区二区三区-老狼| 欧美专区日韩视频| 欧美性色19p| 日韩在线视频中文字幕| 精品亚洲国产成av人片传媒| 午夜精品久久久久久久99黑人| 91精品综合久久久久久五月天| 欧美精品电影在线| 亚洲男人天堂古典| 国产区亚洲区欧美区| 一区二区欧美在线| 国内免费久久久久久久久久久| 国产精品久久久久久一区二区| 国产亚洲精品高潮| 综合欧美国产视频二区| 91精品国产综合久久久久久蜜臀| 国产精品久久视频| 亚洲少妇中文在线| 国产一区二区日韩精品欧美精品| 日日狠狠久久偷偷四色综合免费| 亚洲精品综合久久中文字幕| 一本一道久久a久久精品逆3p| 国产成人精品一区二区三区| 成人黄色免费在线观看| 日韩在线观看电影| 日韩av在线免费观看一区| 最新中文字幕亚洲| 欧美寡妇偷汉性猛交| 国产精品h片在线播放| 亚洲mm色国产网站| 久久久久久国产免费| 欧美色图在线视频| 国产91精品最新在线播放| www国产91| 欧美日韩中文字幕| 国产成人福利视频| 亚洲国产精品va在看黑人| 成人av电影天堂| 黑人精品xxx一区一二区| 北条麻妃99精品青青久久| 国产精品午夜视频| 日韩av大片在线| 日韩av片永久免费网站| 亚洲电影免费观看高清完整版| 国产精品久久久久免费a∨| 操人视频在线观看欧美| 久久中文字幕视频| 日韩美女视频免费看| 成人亚洲欧美一区二区三区| 欧美日韩免费网站| 国产精品免费小视频| 久久伊人精品一区二区三区| 97久久精品人人澡人人爽缅北| 久久久精品视频在线观看| 欧美中文在线视频| 国产精品视频网站| 久久久女女女女999久久| 人体精品一二三区| 欧美激情图片区| 久久精品国产欧美激情| 亚洲日本中文字幕| 成人在线播放av| 欧美日韩第一视频| 亚洲自拍偷拍第一页| 成人福利视频在线观看| 91精品在线影院| 日韩在线中文字幕| 久久久精品一区二区三区| 国产日韩欧美视频| 午夜剧场成人观在线视频免费观看| 欧美激情奇米色| 黄色成人在线免费| 成人激情综合网| 在线观看日韩www视频免费| 国产精品美女久久| 亚洲精品视频在线观看视频| 少妇精69xxtheporn| 亚洲福利视频网| 精品综合久久久久久97| 亚洲尤物视频网| 精品国产1区2区| 欧美国产中文字幕| 成人激情综合网| 欧美专区在线视频| 日韩av在线看| 久久精品一偷一偷国产| 91国语精品自产拍在线观看性色| 国产精品欧美日韩一区二区| 国产日产亚洲精品| 色狠狠av一区二区三区香蕉蜜桃| 亚洲激情在线视频| 欧美另类69精品久久久久9999| 丝袜一区二区三区| 国内外成人免费激情在线视频网站| 久久国产加勒比精品无码| 亚洲天堂av在线播放| 欧美视频一区二区三区…| 国内精品久久久| 亚洲xxxxx| 亚洲免费视频网站| 91久久夜色精品国产网站| 国产精品成熟老女人| 人九九综合九九宗合| 成人黄色免费在线观看| 亚洲毛片在线免费观看| 国内揄拍国内精品| 91成人福利在线| 26uuu日韩精品一区二区| 69影院欧美专区视频| 九色精品美女在线| 亚洲免费福利视频| 国产精品久久精品| 国产精品精品一区二区三区午夜版| 一区二区三区日韩在线|