




已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
圖書管理系統(tǒng) 主要內容 圖書管理系統(tǒng)的注冊模塊作者 084班黎印根 20081543 注冊的主要功能模塊簡介 1 用戶名驗證 在用戶名后面輸入用戶名后要到數(shù)據(jù)庫中查找該用戶是否存在 2 密碼驗證 輸入的密碼不能為空3 確認密碼驗證 輸入的密碼不能為空 且要和密碼一致 4 出生日期 從下拉列表中選擇 年 月 日5 手機號碼驗證 不能為空 要符合手機號碼的格式 6 電子郵件驗證 輸入的電子郵件要符合相應的格式 7 注冊 點擊 注冊 按鈕 要先判斷輸入的注冊信息是否合法 如果合法 則把對應得信息插入到數(shù)據(jù)庫的user表中 后面會對這些功能模塊的具體實現(xiàn)做詳細介紹 注冊模塊所用到的知識點 1 javascript的局部刷新層的技術 以及刷新多個層的方法設計和參數(shù)設置 2 數(shù)據(jù)庫技術 數(shù)據(jù)庫的鏈接 以及數(shù)據(jù)的查找和插入 3 MVC技術 使用mvc模式進行設計 4 正則表達式 驗證數(shù)據(jù)輸入格式 5 日期格式在數(shù)據(jù)庫和java之間格式的轉換 6 亂碼的處理 7 HTML技術和jsp技術以及servlet技術等 1 用戶名驗證模塊的實現(xiàn) 用戶名驗證是注冊模塊中相對比較復雜的 其具體實現(xiàn)過程是 當在注冊界面reg jsp中的用戶名文本框中輸入數(shù)據(jù)后 用戶會觸發(fā)一個onblur事件 該事件調用一個javaScript中的startRequest n 函數(shù) 參數(shù)n是傳進來的文本框的值 userForm loginname value 該函數(shù)調用createXMLHttpRequest 方法創(chuàng)建一個xmlHttp對象 通過該對象調用handleStateChange 方法 并把得到的用戶名發(fā)送給一個servlet類 loginnameCheck java 轉發(fā)到該servlet后該類先獲取該用戶名 然后通過查找數(shù)據(jù)庫并判斷后返回對應的內容到注冊頁面 注冊頁面通過xmlHttp responseText獲取返回的值并更新到對應的層中 從而提醒用戶 輸入的用戶名是否合法 該過程判斷的內容和返回的值可以看如下代碼 部分代碼 LoginNameCheck java if type equals a try GetLoginNamegetLoginname newGetLoginName userBean getLoginname getLoginname loginname catch Exceptione e printStackTrace if loginname if userBean null out println 用戶已存在 out println else out println OK out println elseif loginname out println 用戶名不能為空 out println GetLoginName java publicUserBeangetLoginname Stringloginname throwsException UserBeanuserBean null DataBasedb newDataBase Connectioncn null PreparedStatementpst null ResultSetrs null try cn db getconn Stringsql select fromuserwhereloginname pst cn prepareStatement sql pst setString 1 loginname rs pst executeQuery if rs next userBean newUserBean userBean setUserid rs getInt userid userBean setLoginname rs getString loginname userBean setUsername rs getString username userBean setBirthday rs getDate birthday userBean setCert rs getString cert userBean setCerttype rs getString certtype userBean setEmail rs getString email userBean setPassword rs getString password userBean setPhone rs getString phone userBean setRole rs getInt role userBean setSex rs getString sex catch Exceptione throwe finally try pst close rs close cn close catch Exceptione e printStackTrace returnuserBean 2 密碼驗證模塊的實現(xiàn) 當在注冊界面reg jsp中的密碼框中輸入數(shù)據(jù)后 用戶會觸發(fā)一個onblur事件 該事件調用一個javaScript中的startRequest n 函數(shù) 參數(shù)n是傳進來的文本框的值 userForm password value 該函數(shù)調用createXMLHttpRequest 方法創(chuàng)建一個xmlHttp對象 通過該對象調用handleStateChange 方法 并把得到的用戶名發(fā)送給一個servlet類 loginnameCheck java 轉發(fā)到該servlet后該類先獲取該password 然后通過判斷后返回對應的內容到注冊頁面 注冊頁面通過xmlHttp responseText獲取返回的值并更新到對應的層中 從而提醒用戶 輸入的密碼是否合法 該過程判斷的內容和返回的值可以看如下代碼 代碼部分 elseif type equals b if password out println 密碼不能為空 out println elseif password out println OK out println 3 確認密碼驗證具體實現(xiàn) 當在注冊界面reg jsp中的密碼框中輸入數(shù)據(jù)后 用戶會觸發(fā)一個onblur事件 該事件調用一個javaScript中的startRequest n 函數(shù) 參數(shù)n是傳進來的文本框的值 userForm repass value 該函數(shù)調用createXMLHttpRequest 方法創(chuàng)建一個xmlHttp對象 通過該對象調用handleStateChange 方法 并把得到的用戶名發(fā)送給一個servlet類 loginnameCheck java 轉發(fā)到該servlet后該類先獲取該repass 然后通過判斷后返回對應的內容到注冊頁面 注冊頁面通過xmlHttp responseText獲取返回的值并更新到對應的層中 從而提醒用戶 輸入的確認密碼是否合法 該過程判斷的內容和返回的值可以看如下代碼 部分代碼 if repass if password equals repass out println OK out println else out println 2次輸入密碼不一致 out println elseif repass out println 密碼不能為空 out println 4 出生日期具體實現(xiàn) 當在注冊界面reg jsp中的 出生年月 的下拉框中選擇自己的出生 年 月 日 這里比較簡單 不需要驗證 部分代碼 5 手機號碼驗證具體實現(xiàn) 當在注冊界面reg jsp中的密碼框中輸入數(shù)據(jù)后 用戶會觸發(fā)一個onblur事件 該事件調用一個javaScript中的startRequest n 函數(shù) 參數(shù)n是傳進來的文本框的值 userForm phone value 該函數(shù)調用createXMLHttpRequest 方法創(chuàng)建一個xmlHttp對象 通過該對象調用handleStateChange 方法 并把得到的用戶名發(fā)送給一個servlet類 loginnameCheck java 轉發(fā)到該servlet后該類先獲取該phoen 然后通過正則表達式和if語句的判斷后返回對應的內容到注冊頁面 注冊頁面通過xmlHttp responseText獲取返回的值并更新到對應的層中 從而提醒用戶 輸入的手機號碼是否合法 該過程判斷的內容和返回的值可以看如下代碼 部分代碼 if phone Stringcheckphone 0 0 1 13 4 9 15 8 9 15 0 1 18 7 8 0 9 8 Patternregex Ppile checkphone Matchermatcher regex matcher phone if matcher matches out println OK out println else out println 非法手機號碼 out println elseif phone out println 手機號碼沒有輸入 out println 6 電子郵件驗證具體實現(xiàn) 當在注冊界面reg jsp中的密碼框中輸入數(shù)據(jù)后 用戶會觸發(fā)一個onblur事件 該事件調用一個javaScript中的startRequest n 函數(shù) 參數(shù)n是傳進來的文本框的值 userForm email value 該函數(shù)調用createXMLHttpRequest 方法創(chuàng)建一個xmlHttp對象 通過該對象調用handleStateChange 方法 并把得到的用戶名發(fā)送給一個servlet類 loginnameCheck java 轉發(fā)到該servlet后該類先獲取該email 然后通過正則表達式和if語句的判斷后返回對應的內容到注冊頁面 注冊頁面通過xmlHttp responseText獲取返回的值并更新到對應的層中 從而提醒用戶 輸入的電子郵件是否合法 該過程判斷的內容和返回的值可以看如下代碼 部分代碼 if email Stringcheckemail a z0 9a z a z0 9a z a z0 9a z a z0 9a z a za z 2 Patternregex Ppile checkemail Matchermatcher regex matcher email if matcher matches out println OK out println else out println 輸入的email不正確 out println elseif email out println 郵件不能為空 out println 7 注冊具體實現(xiàn) 該模塊是注冊中最關鍵的一步 其具體實現(xiàn)為 點擊注冊界面reg jsp的Form表單中的 注冊 按鈕 把數(shù)據(jù)發(fā)送給一個servlet類 AddUser java 該類接受相應的數(shù)據(jù)后并判斷其都合法后調用操作數(shù)據(jù)庫的類AddUserModel java類的add userBean 方法 向數(shù)據(jù)庫中增加相應的記錄 其過程存在許多細節(jié)問題 比如 獲取日期后插入到數(shù)據(jù)庫前先需要進行格式轉換 還有插入中文時候可能會出現(xiàn)亂碼問題 還會出現(xiàn)許多異常 注冊成功的條件設置問題等等 下面我們對這些問題一一解答 日期的獲取和格式轉換 部分代碼 Stringyear request getParameter year Stringmonth request getParameter month Stringday request getParameter day birthday1 year month day java sql Datebirthday null try SimpleDateFormatsdf newSimpleDateFormat yyyy MM dd java util Datedate sdf parse birthday1 birthday newjava sql Date date getTime catch Exceptione e printStackTrace 中文亂碼問題 request setCharacterEncoding UTF 8 response setContentType text html charset UTF 8 異常處理 例如 空指針異常 我們先要判斷它是否為空 如果為空 則為了不引起異常 給他附一個非空的值 部分代碼 StringloginnameDiv request getParameter loginnameDiv if loginnameDiv loginnameDiv NO StringpasswordDiv request getParameter passwordDiv if passwordDiv passwordDiv NO StringrepassDiv request getParameter repassDiv if repassDiv repassDiv NO StringemailDiv request getParameter emailDiv if emailDiv emailDiv NO StringphoneDiv request getParameter phoneDiv if phoneDiv phoneDiv NO 注冊成功的條件設置 當要向數(shù)據(jù)庫中插入注冊信息之前 要先判斷用戶輸入的所有數(shù)據(jù)是否都合理 如果都符合要求就注冊成功 否則就轉到失敗界面 要判斷用戶輸入的數(shù)據(jù)是否合理 關鍵是要獲取驗證信息是否都通過 也就是說必須獲得DIV中的信息 當DIV中的信息都為 OK 時就說明數(shù)據(jù)合法 在另一個界面
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年內蒙古自治區(qū)中考地理試題卷
- 燈具安裝工(開關接線)考試試卷及答案
- 大數(shù)據(jù)股權遠期轉讓及數(shù)據(jù)資源共享協(xié)議
- 環(huán)保產(chǎn)業(yè)股權抵押借款合同范本
- 互聯(lián)網(wǎng)金融服務平臺合作與風險管理合同
- 高新技術企業(yè)股權并購合同編制
- 互聯(lián)網(wǎng)企業(yè)股權激勵與股權鎖定合同協(xié)議書
- 股權出資轉讓及并購基金設立協(xié)議
- 股票交易策略評估與優(yōu)化軟件使用許可協(xié)議
- 高端保姆專業(yè)照護服務合同:全方位家庭照料
- 車輛掛名使用權轉讓與免責保障協(xié)議
- 湖北省八校聯(lián)考2024-2025學年高一下學期6月期末生物試卷(含答案)
- 2025至2030中國碳納米管行業(yè)市場發(fā)展分析及風險與對策報告
- 艾滋病患者的心理與護理
- 人教版(2024)七年級下冊生物期末復習全冊考點背誦提綱
- 科研中試基地管理制度
- 2024-2025學年北師大版(2024)物理八年級下冊期末練習卷(一)(含解析)
- 2025年中國花生粕市場調查研究報告
- 直腸癌外科治療進展講課件
- 幼托班員工管理制度
- 兒童課件小學生講繪本成語故事《69狐假虎威》課件
評論
0/150
提交評論