實現(xiàn)登錄例子_第1頁
實現(xiàn)登錄例子_第2頁
實現(xiàn)登錄例子_第3頁
實現(xiàn)登錄例子_第4頁
實現(xiàn)登錄例子_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實現(xiàn)登錄例子登錄例子要求登錄例子要求訪問index.jsp頁面,輸入用戶名和密碼使用JS校驗用戶名和密碼不能為空如果用戶名和密碼在userstable.txt中存在,且狀態(tài)為審核通過,則登錄成功,跳轉到loginsuccess.jsp頁面,并顯示用戶名如果用戶名或密碼不正確,或者狀態(tài)是正在審核或者審核被拒絕,則跳轉到index.jsp,顯示相應的提示信息步驟步驟1 1:創(chuàng)建:創(chuàng)建JSPJSP頁面靜態(tài)部分頁面靜態(tài)部分先創(chuàng)建JSP頁面,只實現(xiàn)其中靜態(tài)部分,以便理解例子的需求 index.jsp:登錄表單、顯示登錄錯誤信息 loginsuccess.jsp:登錄成功頁面,顯示歡迎信息及用戶名稱Ind

2、ex.jsp頁面loginsuccess.jsp頁面步驟步驟2 2:創(chuàng)建一個實體類:創(chuàng)建一個實體類UserUser例子中,只存在一種對象,即用戶,創(chuàng)建一個實體類User,來封裝用戶的信息,也稱為VO類,即值對象。實體類中主要的代碼多用IDE的工具自動生成 聲明屬性 聲明構造方法 聲明getters/setters 覆蓋toString方法,以便測試時打印輸出方便查看 表中包括三列字段,用戶名、密碼、狀態(tài)步驟步驟3 3:創(chuàng)建一個類,讀文件并封裝成:創(chuàng)建一個類,讀文件并封裝成UserUser對象返回對象返回對數(shù)據(jù)做處理,是應用開發(fā)中重要的一步,數(shù)據(jù)可能存在文件中,也可能存在數(shù)據(jù)庫軟件中,目前沒有學

3、習JDBC,所以存在文件中,文件保存在與UserDAO相同的src目錄下。讀取數(shù)據(jù)后,為了處理方便,都封裝成對象。創(chuàng)建UserDAO類,編寫selectByNamePwd方法,模擬查詢方法,把查詢到的記錄封裝成User對象返回。在main方法中測試方法步驟步驟4 4:創(chuàng)建一個類,實現(xiàn)登錄的業(yè)務邏輯:創(chuàng)建一個類,實現(xiàn)登錄的業(yè)務邏輯登錄的邏輯 驗證用戶名和密碼,如果不存在,登錄失敗 驗證用戶名和密碼,如果存在 驗證狀態(tài),狀態(tài)為0,表示正在等待審核,登錄失敗 驗證狀態(tài),狀態(tài)為1,表示審核通過,登錄成功 驗證狀態(tài),狀態(tài)為2,表示審核被拒絕,登錄失敗創(chuàng)建類LoginService,使用UserDAO類,

4、實現(xiàn)login方法 返回1,登錄成功 返回0,登錄失敗,等待審核 返回2,登錄失敗,審核被拒絕 返回3:登錄失敗,用戶名或密碼出錯步驟步驟5 5:創(chuàng)建:創(chuàng)建ServletServlet,獲得請求并處理,獲得請求并處理創(chuàng)建LoginServlet,獲取index.jsp中的請求參數(shù),調用LoginService進行處理,并根據(jù)處理結果進行跳轉,跳轉多數(shù)情況使用請求轉發(fā)。String username=request.getParameter(username);String pwd=request.getParameter(pwd);LoginService service=new LoginS

5、ervice();int flag=service.login(username, pwd);if(flag=0)request.getRequestDispatcher(index.jsp).forward(request, response);else if(flag=1)request.getRequestDispatcher(loginsuccess.jsp).forward(request, response);else if(flag=2)request.getRequestDispatcher(index.jsp).forward(request, response);else

6、if(flag=3)request.getRequestDispatcher(index.jsp).forward(request, response);步驟步驟6 6:修改:修改JSPJSP修改index.jsp的action值,提交表單訪問LoginServlet 用戶名: 密 碼: 修改loginsuccess.jsp,顯示用戶名登錄成功!歡迎您:登錄頁面,失敗后依然到該頁面登錄成功后的頁面步驟步驟7 7:登錄失敗后,顯示不同的提示信息:登錄失敗后,顯示不同的提示信息登錄情況是由LoginServlet判斷得到的,所以應該是LoginServlet把不同的提示信息傳遞到index.jsp

7、進行顯示Servlet向JSP傳遞數(shù)據(jù),可以使用請求屬性實現(xiàn)if(flag=0)request.setAttribute(msg, 正在審核,請等待。);request.getRequestDispatcher(index.jsp).forward(request, response);else if(flag=1)request.getRequestDispatcher(loginsuccess.jsp).forward(request, response);else if(flag=2)request.setAttribute(msg, 審核未通過,重新注冊。);request.getRe

8、questDispatcher(index.jsp).forward(request, response);else if(flag=3)request.setAttribute(msg, 用戶名或密碼錯誤);request.getRequestDispatcher(index.jsp).forward(request, response);步驟步驟7 7:index.jspindex.jsp顯示信息顯示信息LoginServlet把登錄失敗提示信息作為請求屬性存儲,轉發(fā)到index.jsp后,JSP可以獲取屬性進行顯示。提示信息:用戶名: 密 碼: 步驟步驟8 8:使用:使用JSJS校驗輸入

9、信息校驗輸入信息登錄按鈕的type修改為button,使用JS提交: JS方法中校驗輸入的用戶名和密碼,為空時提示信息,不提交。不為空時提交請求。function login()var flag=1;var username=document.getElementById(username).value;var pwd=document.getElementById(pwd).value;var usernamemsg=document.getElementById(usernamemsg);var pwdmsg=document.getElementById(pwdmsg);if(username=null|username=)us

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論