(一)案例需求描述
一、案例需求
二吆你、案例功能分析
1嗦哆、登錄失敗用戶名或密碼錯(cuò)誤驗(yàn)證碼錯(cuò)誤回到登錄頁(yè)面
2燕鸽、登錄成功如果勾選了記住用戶名復(fù)選框利用Cookie記住登錄成功的用戶的用戶名需要將用戶信息保存到Session中進(jìn)行頁(yè)面跳轉(zhuǎn),跳到成功頁(yè)面
(二)案例準(zhǔn)備
一敬拓、創(chuàng)建Web項(xiàng)目
二邻薯、引入Jar包
三、創(chuàng)建包結(jié)構(gòu)
四乘凸、引入工具類和配置文件
五厕诡、引入相關(guān)的類并修改Servlet2還需要修改配置文件web.xmlServlet3以注解形式注冊(cè)的,不需要寫(xiě)web.xml
六营勤、創(chuàng)建登錄頁(yè)面頁(yè)面代碼
(三)案例代碼-用戶登錄的功能
一灵嫌、用戶登錄流程用戶輸入用戶名或密碼進(jìn)行登錄如果用戶名或密碼錯(cuò)誤,保存錯(cuò)誤信息葛作,回到登錄頁(yè)面如果用戶名和密碼正確寿羞,將用戶的信息保存到會(huì)話中,跳轉(zhuǎn)到成功頁(yè)面
二赂蠢、用戶登錄代碼實(shí)現(xiàn)在登錄頁(yè)面回顯錯(cuò)誤信息用戶登錄代碼實(shí)現(xiàn)編寫(xiě)success.jsp
(四)案例代碼-一次性驗(yàn)證碼
一绪穆、一次性驗(yàn)證碼的分析
1、一次性驗(yàn)證碼的作用防止惡意灌水,而且一次性驗(yàn)證碼只能夠使用一次霞幅,不管成功或者失敗漠吻,驗(yàn)證碼都將失效
2、一次性驗(yàn)證碼的校驗(yàn)一次性驗(yàn)證碼生成:隨機(jī)生成4個(gè)字母或數(shù)字司恳,由Response生成一張圖片響應(yīng)到頁(yè)面
二途乃、一次性驗(yàn)證碼的實(shí)現(xiàn)
1、生成驗(yàn)證碼圖片復(fù)制Servlet到指定的包下Servlet2需要修改web.xml完成該Servlet的配置在頁(yè)面中引入Servlet
2扔傅、將隨機(jī)生成的字母或數(shù)字保存到Session中
3耍共、校驗(yàn)一次性驗(yàn)證碼
三、一次性驗(yàn)證碼的點(diǎn)擊按鈕切換圖片
1猎塞、點(diǎn)擊按鈕切換圖片
2试读、代碼實(shí)現(xiàn)提供超鏈接編寫(xiě)JS的函數(shù)
四、記住用戶名的實(shí)現(xiàn)
1荠耽、需求概述如果在登錄的過(guò)程中钩骇,將記住用戶名的復(fù)選框勾選了,而且必須在錄成功的情況下铝量,就需要記住用戶名倘屹,在關(guān)閉瀏覽器、下次訪問(wèn)該網(wǎng)站的登錄頁(yè)面時(shí)慢叨,會(huì)在用戶名的文本框中自動(dòng)呈現(xiàn)出用戶名
2纽匙、代碼實(shí)現(xiàn)記住用戶名的后臺(tái)代碼在頁(yè)面的文本框中回顯用戶名
五、系統(tǒng)退出
1拍谐、提供一個(gè)退出的鏈接
2烛缔、編寫(xiě)LogoutServlet