day18_綜合練習(xí)_第1頁
day18_綜合練習(xí)_第2頁
day18_綜合練習(xí)_第3頁
day18_綜合練習(xí)_第4頁
day18_綜合練習(xí)_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

day18_綜合練習(xí)0.1學(xué)習(xí)目標(biāo)n 完成登錄功能n 完成增加功能n 完成刪除功能n 完成修改功能n 完成選中項刪除功能n 完成分頁查詢功能n 完成復(fù)雜條件查詢功能0.2 學(xué)習(xí)指南n 簡單增刪改查(重要)n 選中項刪除(重要)n 分頁條件查詢(重要)第一堂課本節(jié)知識點(diǎn)頁面調(diào)整登錄功能_驗證碼顯示登錄功能_代碼實現(xiàn)本節(jié)目標(biāo) 完成登錄功能1.1.1知識概述調(diào)整案例所需頁面的樣式以及內(nèi)容 1.1.2視頻詳情1.1.3總結(jié)與補(bǔ)充無1.1.4課堂提問與練習(xí)無1.1.5習(xí)題答案無1.1.6視頻缺陷無1.1.7視頻擴(kuò)展無1.1 登錄功能_驗證碼顯示1.2.1知識概述登錄的時候要先校驗驗證碼是否正確,正確再去校驗賬號密碼,密碼正確放入session中保存用戶信息1.2.2視頻詳情1.2.3總結(jié)與補(bǔ)充需要注意的是用戶驗證成功后把登錄信息存入session中。1.2.4課堂提問與練習(xí)1.2.5習(xí)題答案1.2.6視頻缺陷無1.2.7視頻擴(kuò)展無1.2 登錄功能_代碼實現(xiàn)1.3.1知識概述request.setCharacterEncoding(utf-8); /2.獲取數(shù)據(jù) /2.1獲取用戶填寫驗證碼 String verifycode = request.getParameter(verifycode); /3.驗證碼校驗 HttpSession session = request.getSession(); String checkcode_server = (String) session.getAttribute(CHECKCODE_SERVER); session.removeAttribute(CHECKCODE_SERVER);/確保驗證碼一次性 if(!checkcode_server.equalsIgnoreCase(verifycode) /驗證碼不正確 /提示信息 request.setAttribute(login_msg,驗證碼錯誤!); /跳轉(zhuǎn)登錄頁面 request.getRequestDispatcher(/login.jsp).forward(request,response); return; Map map = request.getParameterMap(); /4.封裝User對象 User user = new User(); try BeanUtils.populate(user,map); catch (IllegalAccessException e) e.printStackTrace(); catch (InvocationTargetException e) e.printStackTrace(); /5.調(diào)用Service查詢 UserService service = new UserServiceImpl(); User loginUser = service.login(user); /6.判斷是否登錄成功 if(loginUser != null) /登錄成功 /將用戶存入session session.setAttribute(user,loginUser); /跳轉(zhuǎn)頁面 response.sendRedirect(request.getContextPath()+/index.jsp); else /登錄失敗 /提示信息 request.setAttribute(login_msg,用戶名或密碼錯誤!); /跳轉(zhuǎn)登錄頁面 request.getRequestDispatcher(/login.jsp).forward(request,response); 1.3.2視頻詳情1.3.3總結(jié)與補(bǔ)充1.3.4課堂提問與練習(xí)1.3.5習(xí)題答案1.3.6視頻缺陷無1.3.7視頻擴(kuò)展無第二堂課本節(jié)知識點(diǎn):添加功能_分析添加功能_實現(xiàn)刪除功能_分析刪除功能_代碼實現(xiàn)修改功能_分析本節(jié)目標(biāo) :完成添加與修改功能2.1 添加功能_分析2.1.1知識概述 添加頁面,輸入數(shù)據(jù)一定要有屬性名稱,提交form表單到后臺,后臺接收數(shù)據(jù)封裝到user中,并編寫sql語句2.1.2視頻詳情2.1.3總結(jié)與補(bǔ)充無2.1.4課堂提問與練習(xí)無2.1.5習(xí)題答案無2.1.6視頻缺陷無2.1.7視頻擴(kuò)展無2.2 添加功能_實現(xiàn)2.2.1知識概述/1.設(shè)置編碼 request.setCharacterEncoding(utf-8); /2.獲取參數(shù) Map map = request.getParameterMap(); /3.封裝對象 User user = new User(); try BeanUtils.populate(user,map); catch (IllegalAccessException e) e.printStackTrace(); catch (InvocationTargetException e) e.printStackTrace(); /4.調(diào)用Service保存 UserService service = new UserServiceImpl(); service.addUser(user); /5.跳轉(zhuǎn)到userListServlet response.sendRedirect(request.getContextPath()+/userListServlet);2.2.2視頻詳情2.2.3總結(jié)與補(bǔ)充2.2.4課堂提問與練習(xí)無2.2.5習(xí)題答案無2.2.6視頻缺陷無2.2.7視頻擴(kuò)展無2.3 刪除功能_分析2.3.1知識概述通過id刪除數(shù)據(jù),編寫sql語句。2.3.2視頻詳情2.3.3總結(jié)與補(bǔ)充2.3.4課堂提問與練習(xí)無2.3.5習(xí)題答案無2.3.6視頻缺陷無2.3.7視頻擴(kuò)展無2.4刪除功能_代碼實現(xiàn) 2.4.1知識概述代碼:/1.獲取id String id = request.getParameter(id); /2.調(diào)用service刪除 UserService service = new UserServiceImpl(); service.deleteUser(id); /3.跳轉(zhuǎn)到查詢所有Servlet response.sendRedirect(request.getContextPath()+/userListServlet);2.4.2視頻詳情2.4.3總結(jié)與補(bǔ)充2.4.4課堂提問與練習(xí)2.4.5習(xí)題答案2.4.6視頻缺陷無2.4.7視頻擴(kuò)展無2.5修改功能_分析 2.5.1知識概述首先要進(jìn)行數(shù)據(jù)回顯,然后提交修改后數(shù)據(jù)到后臺,進(jìn)行保存。2.5.2視頻詳情2.5.3總結(jié)與補(bǔ)充2.5.4課堂提問與練習(xí)2.5.5習(xí)題答案2.5.6視頻缺陷無2.5.7視頻擴(kuò)展無第三堂課本節(jié)知識點(diǎn)修改功能_代碼實現(xiàn)1_用戶信息回顯修改功能_代碼實現(xiàn)2_用戶修改刪除選中功能_分析刪除選中功能_代碼實現(xiàn)_獲取選中條目id刪除選中功能_代碼實現(xiàn)_刪除選中服務(wù)器代碼編寫本節(jié)目標(biāo) 能夠完成修改代碼能夠完成刪除選中條目代碼3.1 修改功能_代碼實現(xiàn)1_用戶信息回顯3.1.1知識概述 /1.獲取id String id = request.getParameter(id); /2.調(diào)用Service查詢 UserService service = new UserServiceImpl(); User user = service.findUserById(id); /3.將user存入request request.setAttribute(user,user); /4.轉(zhuǎn)發(fā)到update.jsp request.getRequestDispatcher(/update.jsp).forward(request,response);3.1.2視頻詳情3.1.3總結(jié)與補(bǔ)充3.1.4課堂提問與練習(xí)3.1.5習(xí)題答案3.1.6視頻缺陷無3.1.7視頻擴(kuò)展無3.2修改功能_代碼實現(xiàn)2_用戶修改3.2.1知識概述/1.設(shè)置編碼 request.setCharacterEncoding(utf-8); /2.獲取map Map map = request.getParameterMap(); /3.封裝對象 User user = new User(); try BeanUtils.populate(user,map); catch (IllegalAccessException e) e.printStackTrace(); catch (InvocationTargetException e) e.printStackTrace(); /4.調(diào)用Service修改 UserService service = new UserServiceImpl(); service.updateUser(user); /5.跳轉(zhuǎn)到查詢所有Servlet response.sendRedirect(request.getContextPath()+/userListServlet);3.2.2視頻詳情3.2.3總結(jié)與補(bǔ)充3.2.4課堂提問與練習(xí)3.2.5習(xí)題答案3.2.6視頻缺陷無3.2.7視頻擴(kuò)展無3.3刪除選中功能_分析3.3.1知識概述首先要獲取選中條目的id,然后根據(jù)id進(jìn)行刪除。3.3.2視頻詳情3.3.3總結(jié)與補(bǔ)充3.3.4課堂提問與練習(xí)3.3.5習(xí)題答案3.3.6視頻缺陷無3.3.7視頻擴(kuò)展無3.4刪除選中功能_代碼實現(xiàn)_獲取選中條目id3.4.1知識概述/給刪除選中按鈕添加單擊事件 document.getElementById(delSelected).onclick = function() if(confirm(您確定要刪除選中條目嗎?) var flag = false; /判斷是否有選中條目 var cbs = document.getElementsByName(uid); for (var i = 0; i cbs.length; i+) if(cbsi.checked) /有一個條目選中了 flag = true; break; if(flag)/有條目被選中 /表單提交 document.getElementById(form).submit(); 3.4.2視頻詳情3.4.3總結(jié)與補(bǔ)充3.4.4課堂提問與練習(xí)3.4.5習(xí)題答3.4.6視頻缺陷無3.4.7視頻擴(kuò)展無3.5刪除選中功能_代碼實現(xiàn)_刪除選中服務(wù)器代碼編寫3.5.1知識概述/1.獲取所有id String ids = request.getParameterValues(uid); /2.調(diào)用service刪除 UserService service = new UserServiceImpl(); service.delSelectedUser(ids); /3.跳轉(zhuǎn)查詢所有Servlet response.sendRedirect(request.getContextPath()+/userListServlet);3.5.2視頻詳情3.5.3總結(jié)與補(bǔ)充3.5.4課堂提問與練習(xí)3.5.5習(xí)題答3.5.6視頻缺陷無3.5.7視頻擴(kuò)展無第四堂課本節(jié)知識點(diǎn):刪除選中功能_代碼實現(xiàn)_刪除選中細(xì)節(jié)處理分頁查詢功能_分析分頁查詢功能_代碼實現(xiàn)_分析具體步驟本節(jié)目標(biāo) :完成刪除選中功能的細(xì)節(jié)處理完成分頁查詢功能4.1 刪除選中功能_代碼實現(xiàn)_刪除選中細(xì)節(jié)處理4.1.1知識概述判斷前臺頁面?zhèn)鞯胶笈_的數(shù)據(jù)是否為空。避免出現(xiàn)空指針異常。4.1.2視頻詳情4.1.3總結(jié)與補(bǔ)充4.1.4課堂提問與練習(xí)4.1.5習(xí)題答案4.1.6視頻缺陷無4.1.7視頻擴(kuò)展無4.2分頁查詢功能_分析4.2.1知識概述前臺頁面需要把當(dāng)前頁與每頁顯示條數(shù)傳入后臺。4.2.2視頻詳情4.2.3總結(jié)與補(bǔ)充4.2.4課堂提問與練習(xí)4.2.5習(xí)題答案4.2.6視頻缺陷無4.2.7視頻擴(kuò)展無4.3分頁查詢功能_代碼實現(xiàn)_分析具體步驟4.3.1知識概述/1.獲取參數(shù) String currentPage = request.getParameter(currentPage);/當(dāng)前頁碼 String rows = request.getParameter(rows);/每頁顯示條數(shù) if(currentPage = null | .equals(currentPage) currentPage = 1; if(rows = null | .equals(rows) rows = 5; /獲取條件查詢參數(shù) Map condition = request.getParameterMap(); /2.調(diào)用service查詢 UserService service = new UserServiceImpl(); PageBean pb = service.findUserByPage(currentPage,rows,condition); System.out.println(pb); /3.將PageBean存入request request.setAttribute(pb,pb); request.setAttribute(condition,condition);/將查詢條件存入request /4.轉(zhuǎn)發(fā)到list.jsp request.getRequestDispatcher(/list.jsp).forward(request,response); 4.3.2視頻詳情4.3.3總結(jié)與補(bǔ)充4.3.4課堂提問與練習(xí)4.3.5習(xí)題答案4.3.6視頻缺陷無4.3.7視頻擴(kuò)展無第五堂課本節(jié)知識點(diǎn): 分頁查詢功能_代碼實現(xiàn)_后臺代碼實現(xiàn)分頁查詢功能_代碼實現(xiàn)_前臺代碼實現(xiàn)本節(jié)目標(biāo) :1、能夠完成分頁查詢功能_代碼實現(xiàn)_后臺代碼實現(xiàn)2、能夠完成分頁查詢功能_代碼實現(xiàn)_前臺代碼實現(xiàn)5.1分頁查詢功能_代碼實現(xiàn)_后臺代碼實現(xiàn)5.1.1知識概述/1.獲取參數(shù) String currentPage = request.getParameter(currentPage);/當(dāng)前頁碼 String rows = request.getParameter(rows);/每頁顯示條數(shù) if(currentPage = null | .equals(currentPage) currentPage = 1; if(rows = null | .equals(rows) rows = 5; /獲取條件查詢參數(shù) Map condition = request.getParameterMap(); /2.調(diào)用service查詢 UserService service = new UserServiceImpl(); PageBean pb = service.findUserByPage(currentPage,rows,condition); System.out.println(pb); /3.將PageBean存入request request.setAttribute(pb,pb); request.setAttribute(condition,condition);/將查詢條件存入request /4.轉(zhuǎn)發(fā)到list.jsp request.getRequestDispatcher(/list.jsp).forward(request,response); 5.1.2視頻詳情5.1.3總結(jié)與補(bǔ)充5.1.4課堂提問與練習(xí)5.1.5習(xí)題答案5.1.6視頻缺陷無5.1.7視頻擴(kuò)展無5.2分頁查詢功能_代碼實現(xiàn)_前臺代碼實現(xiàn)5.2.1知識概述 « $i $i » 共$pb.totalCount條記錄,共$pb.totalPage頁 5.2.2視頻詳情5.2.3總結(jié)與補(bǔ)充5.2.4課堂提問與練習(xí)5.2.5習(xí)題答案5.2.6視頻缺陷無5.2.7視頻擴(kuò)展無第六堂課本節(jié)知識點(diǎn):1復(fù)雜條件查詢功能_分析2復(fù)雜條件查詢功能_代碼實現(xiàn)1_總記錄數(shù)統(tǒng)計3復(fù)雜條件查詢功能_代碼實現(xiàn)2_每頁數(shù)據(jù)條件查詢本節(jié)目標(biāo) :完成復(fù)雜條件查詢功能6.1 復(fù)雜條件查詢功能_分析6.1.1知識概述把查詢條件發(fā)送到后臺,后臺根據(jù)條件進(jìn)行查詢6.1.2視頻詳情6.1.3總結(jié)與補(bǔ)充6.1.4課堂提問與練習(xí)6.1.5習(xí)題答案6.1.6視頻缺陷無6.1.7視頻擴(kuò)展無6.2 復(fù)雜條件查詢功能_代碼實現(xiàn)1_總記錄數(shù)統(tǒng)計J6.2.1知識概述/獲取條件查詢參數(shù) Map condition = request.getParameterMap(); /2.調(diào)用service查詢 UserService service = new UserServiceImpl(); PageBean pb = service.findUserByPage(currentPage,rows,condition); /1.定義模板初始化sql String sql = select count(*) from user where 1 = 1 ; StringBuilder sb = new StringBuilder(sql); /2.遍歷map Set keySet = condition.keySet(); /定義參數(shù)的集合 List params = new ArrayList(); for (String key : keySet) /排除分頁條件參數(shù) if(currentPage.equals(key) | rows.equals(key) continue; /獲取value String value = condition.get(key)0; /判斷value是否有值 if(value != null & !.equals(value) /有值 sb.append( and +key+ like ? ); params.add(%+value+%);/?條件的值 System.out.println(sb.toString(); System.out.println(params); return template.queryForObject(sb.toString(),Integ

溫馨提示

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

最新文檔

評論

0/150

提交評論