




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、JSP程序設(shè)計(jì)學(xué)習(xí)情境1 網(wǎng)上書店系統(tǒng) 分析與設(shè)計(jì)第一部分 案例模仿項(xiàng)目網(wǎng)上書店【學(xué)習(xí)目標(biāo)】 本情境將紹案例模仿項(xiàng)目網(wǎng)上書店的基本概況,完成網(wǎng)上書店系統(tǒng)需求分析和設(shè)計(jì)。1知識(shí)目標(biāo)(1)了解軟件開發(fā)的過程;(2)掌握系統(tǒng)需求分析的基本方法;(3)掌握系統(tǒng)功能分析的任務(wù)、方法。2技能目標(biāo)(1)能對(duì)網(wǎng)上書店系統(tǒng)進(jìn)行需求分析;(2)能對(duì)網(wǎng)上書店系統(tǒng)進(jìn)行系統(tǒng)功能分析;(3)能進(jìn)行系統(tǒng)需求分析文檔的書寫。本情境主要任務(wù)學(xué)習(xí)任務(wù)1:系統(tǒng)需求分析1學(xué)習(xí)任務(wù)2:系統(tǒng)設(shè)計(jì)2學(xué)習(xí)任務(wù)1.1 系統(tǒng)需求分析【任務(wù)計(jì)劃】 本任務(wù)主要完成網(wǎng)上書店可行性分析及需求分析、網(wǎng)上書店需求分析設(shè)計(jì)文檔。在完成過程中主要側(cè)重網(wǎng)上書店數(shù)
2、據(jù)庫設(shè)計(jì)及系統(tǒng)功能設(shè)計(jì)。要求學(xué)生能夠完整的完成網(wǎng)上書店數(shù)據(jù)庫設(shè)計(jì),清晰的描述系統(tǒng)功能。學(xué)習(xí)任務(wù)1.1 系統(tǒng)需求分析【任務(wù)實(shí)施】 1開發(fā)背景 就網(wǎng)上書店而言,由于網(wǎng)絡(luò)已經(jīng)覆蓋全球,信息量大而獨(dú)具優(yōu)勢(shì)。售書的理念也很簡(jiǎn)單,就是讀者可以自己尋找自己喜愛的書,替讀者找尋他們想要的書。對(duì)于讀者來說,可以隨時(shí)隨地自由地查詢和訂購圖書,讀者無需親臨書店,開機(jī)上網(wǎng)即可買到所需書籍,網(wǎng)上購書節(jié)省了大量時(shí)間,這對(duì)于那些沒有時(shí)間經(jīng)常逛傳統(tǒng)書店或其住所離傳統(tǒng)書店較遠(yuǎn)的讀者來說,具有實(shí)際意義,因此網(wǎng)上售書必有長足發(fā)展。 學(xué)習(xí)任務(wù)1.1 系統(tǒng)需求分析【任務(wù)實(shí)施】 2可行性分析(1)經(jīng)濟(jì)可行性分析 傳統(tǒng)的銷售方式是商家把商
3、品放在店鋪里供顧客挑選,店鋪的規(guī)模、位置等客觀因素影響著商店的客流量,并且商品的存放與銷售需要人力進(jìn)行管理,雇員的工資、店面的租金等又增加了成本,顧客也不能迅速找到所需要的商品,而開一個(gè)網(wǎng)上書店只需要一個(gè)可以存放商品的倉庫,比租一個(gè)店面能節(jié)省很多,也不需要太多的人力來管理,不會(huì)因?yàn)樯痰甑拿娣e影響客流量,客戶足不出戶就能買東西,并且很容易就能找到所需要的商品。 學(xué)習(xí)任務(wù)1.1 系統(tǒng)需求分析【任務(wù)實(shí)施】(2)技術(shù)可行性分析 1) 網(wǎng)絡(luò)應(yīng)用基礎(chǔ)設(shè)施完善,為發(fā)展電子商務(wù)提供了基礎(chǔ)設(shè)施。 2)網(wǎng)絡(luò)安全技術(shù)應(yīng)用,為電子商務(wù)應(yīng)用提供安全保證。 3)法律保障,將解決電子商務(wù)活動(dòng)的法律技術(shù)問題,網(wǎng)上書店經(jīng)營活動(dòng)
4、將得到法律的保護(hù)。 4)網(wǎng)絡(luò)技術(shù)的普及與掌握,使我們有能力開發(fā)實(shí)現(xiàn)適合自己的電子商務(wù)系統(tǒng)。 學(xué)習(xí)任務(wù)1.1 系統(tǒng)需求分析【任務(wù)實(shí)施】(3)操作可行性分析 由于網(wǎng)站的操作是基于B/S瀏覽器的頁面操作,簡(jiǎn)單明了,用戶無需學(xué)習(xí),一般都能夠很容易的知道如何操作。而管理員也無需具備專業(yè)知識(shí),只需要對(duì)一些數(shù)據(jù)進(jìn)行輸入以及平時(shí)的日常維護(hù)就夠了。學(xué)習(xí)任務(wù)1.1 系統(tǒng)需求分析【任務(wù)實(shí)施】 3系統(tǒng)功能分析 該系統(tǒng)實(shí)現(xiàn)一個(gè)基于Web的書店系統(tǒng)。系統(tǒng)的業(yè)務(wù)流程就是和現(xiàn)實(shí)中去書店購書一樣。使用該系統(tǒng)的用戶分為兩個(gè)角色:一個(gè)是普通用戶,主要是通過系統(tǒng)在線選擇要購買的書籍并提交訂單;另一個(gè)是管理員,主要是通過系統(tǒng)對(duì)用戶、訂
5、單及圖書信息進(jìn)行管理。 (1)用戶購書系統(tǒng) 用戶購書系統(tǒng)是供用戶使用的。用戶通過它可以完成注冊(cè)、登錄、搜索、修改個(gè)人信息、和購書、書評(píng)功能。 (2)管理員管理系統(tǒng) 管理員管理系統(tǒng)是供管理員使用的。管理員通過它可以對(duì)用戶訂單、用戶、圖書、管理員信息進(jìn)行管理。學(xué)習(xí)任務(wù)1.1 系統(tǒng)需求分析【任務(wù)評(píng)價(jià)】 本任務(wù)主要完成網(wǎng)上書店需求分析任務(wù)書,并完成相關(guān)紙質(zhì)文檔。本任務(wù)從需求分析書內(nèi)容是否詳實(shí)、完整,表達(dá)是否清晰;文檔結(jié)構(gòu)是否合理、版式美觀等方面進(jìn)行評(píng)價(jià)。學(xué)習(xí)任務(wù)1.2 系統(tǒng)設(shè)計(jì)【任務(wù)計(jì)劃】 本任務(wù)主要完成網(wǎng)上書店系統(tǒng)設(shè)計(jì),要求據(jù)系統(tǒng)功能分析繪制網(wǎng)上書店系統(tǒng)功能模塊圖,完成相關(guān)數(shù)據(jù)庫的設(shè)計(jì)與創(chuàng)建。學(xué)習(xí)任
6、務(wù)1.2 系統(tǒng)設(shè)計(jì)【任務(wù)實(shí)施】1系統(tǒng)功能模塊圖學(xué)習(xí)任務(wù)1.2 系統(tǒng)設(shè)計(jì)用戶購書系統(tǒng)顧客注冊(cè)顧客登錄圖書購買留言板管理員系統(tǒng)管理員登錄圖書管理 訂單管理根據(jù)任務(wù)1.1的功能描述內(nèi)容本系統(tǒng)分為前臺(tái)用戶和后臺(tái)管理業(yè)務(wù)兩部分,功能模塊圖如圖1-1、1-2所示。 圖1-1 用戶購書系統(tǒng)模塊圖 圖1-2 管理員系統(tǒng)模塊圖學(xué)習(xí)任務(wù)1.2 系統(tǒng)設(shè)計(jì)【任務(wù)實(shí)施】2數(shù)據(jù)庫結(jié)構(gòu)及實(shí)現(xiàn) 網(wǎng)上書店所使用的數(shù)據(jù)庫是MySql用戶名:root密碼:123 數(shù)據(jù)庫名:test數(shù)據(jù)庫的連接代碼:學(xué)習(xí)任務(wù)1.2 系統(tǒng)設(shè)計(jì)tryClass.forName(com.mysql.jdbc.Driver); catch(Exceptio
7、n e) tryString uri=jdbc:mysql:/localhost/test; Connection con=DriverManager.getConnection(uri,root,123); Statement st = con.createStatement(); /執(zhí)行語句得到結(jié)果集 ResultSet rs = st.executeQuery(sql); if(rs.next() rs.close(); st.close(); con.close(); catch(Exception e) e.printStackTrace(); 學(xué)習(xí)任務(wù)1.2 系統(tǒng)設(shè)計(jì)【任務(wù)實(shí)施】3
8、文件目錄結(jié)構(gòu) 學(xué)習(xí)任務(wù)1.2 系統(tǒng)設(shè)計(jì)本系統(tǒng)保存在myjsp文件夾下,下面是文件的結(jié)構(gòu)目錄圖:學(xué)習(xí)任務(wù)1.2 系統(tǒng)設(shè)計(jì)【任務(wù)評(píng)價(jià)】 本任務(wù)主要完成網(wǎng)上書店的系統(tǒng)設(shè)計(jì),從能否根據(jù)系統(tǒng)功能正確地繪制出網(wǎng)上書店系統(tǒng)功能模塊圖,數(shù)據(jù)庫設(shè)計(jì)規(guī)范(安全性、完整性、一致性和可恢復(fù)性),表之間的關(guān)聯(lián)清晰、表的可讀性明確等方面進(jìn)行評(píng)價(jià)。課外拓展練習(xí)學(xué)生成績管理系統(tǒng) 需求分析和設(shè)計(jì)【學(xué)習(xí)目標(biāo)】 通過對(duì)本學(xué)習(xí)情境的學(xué)習(xí)和實(shí)訓(xùn),使學(xué)生了解成績管理系統(tǒng)概況,完成該系統(tǒng)的需求分析及系統(tǒng)設(shè)計(jì)?!救蝿?wù)計(jì)劃】1完成學(xué)生成績管理系統(tǒng)的需求分析。2完成學(xué)生成績管理系統(tǒng)的系統(tǒng)設(shè)計(jì)。Thank You!第一部分 案例模仿項(xiàng)目網(wǎng)上書店學(xué)
9、習(xí)情境2 書店動(dòng)態(tài)首頁的建立【學(xué)習(xí)目標(biāo)】 通過對(duì)本學(xué)習(xí)情境的學(xué)習(xí)和實(shí)訓(xùn),使學(xué)生了解動(dòng)態(tài)網(wǎng)站開發(fā) 技術(shù),掌握 JSP 基本語法和內(nèi)置對(duì)象的使用,學(xué)會(huì)搭建 JSP 的運(yùn)行環(huán)境,以切實(shí)提高學(xué)生的 Web程序開發(fā)能力和職業(yè)素質(zhì)。1. 知識(shí)目標(biāo)(1)了解多種網(wǎng)頁開發(fā)技術(shù);(2)熟悉JSP運(yùn)行原理;(3)熟練掌握J(rèn)SP運(yùn)行環(huán)境配置;2. 技能目標(biāo)(1)能編寫運(yùn)行一個(gè)簡(jiǎn)單的JSP頁面,并測(cè)試JSP運(yùn)行環(huán)境的搭建是否正確;(2)能完成網(wǎng)上書店首頁的建立;【情境資訊】C/S與B/S模式 C/S(Client/Server)即客戶端/服務(wù)器結(jié)構(gòu)。在這種結(jié)構(gòu)中,服務(wù)器通常采用高性能的PC或工作站,并采用大型數(shù)據(jù)庫系
10、統(tǒng),客戶端則需要安裝專用的客戶端軟件。這種結(jié)構(gòu)可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配到客戶端和服務(wù)器,從而降低系統(tǒng)的通信開銷。在2000年以前,C/S結(jié)構(gòu)占據(jù)網(wǎng)絡(luò)程序開發(fā)領(lǐng)域的主流。圖2-1C/S體系結(jié)構(gòu)【情境資訊】C/S與B/S模式 B/S(Brower/Server)即瀏覽器/服務(wù)器結(jié)構(gòu)。在這種結(jié)構(gòu)中,客戶端不需要開發(fā)任何用戶界面,而統(tǒng)一采用如IE等瀏覽器,通過Web瀏覽器向Web服務(wù)器發(fā)送請(qǐng)求,由Web服務(wù)器進(jìn)行處理,并將處理結(jié)果傳回客戶端。這種結(jié)構(gòu)是一種全新的軟件體系結(jié)構(gòu),這種結(jié)構(gòu)已成為當(dāng)今應(yīng)用軟件的首選體系結(jié)構(gòu)。圖2-2B/S體系結(jié)構(gòu)【情境資訊】2.靜態(tài)網(wǎng)站與動(dòng)態(tài)網(wǎng)站靜態(tài)頁面
11、網(wǎng)頁的內(nèi)容是固定的,不根據(jù)瀏覽者的要求而改變,一般運(yùn)行于客戶端網(wǎng)站頁面動(dòng)態(tài)頁面網(wǎng)頁可以和用戶進(jìn)行交互,隨瀏覽者輸入數(shù)據(jù)、要求等進(jìn)行改變,一般運(yùn)行于服務(wù)器端靜態(tài)頁面案例動(dòng)態(tài)頁面案例文件后綴以.html,.htm,.xml,.shtml結(jié)束【情境資訊】文件后綴以.jsp,.asp,.php,.cgi,.perl等。【情境資訊】【情境資訊】3.多種動(dòng)態(tài)網(wǎng)頁開發(fā)技術(shù)當(dāng)前比較流行的網(wǎng)站開發(fā)技術(shù)php技術(shù)1cgi技術(shù)2asp技術(shù)3jsp技術(shù)4ASP的特點(diǎn) (1)使用簡(jiǎn)單易懂的腳本語言(JavaScript或VBScript等),結(jié)合HTML就可以快速開發(fā)出各種Web應(yīng)用程序。 (2)無須編譯,使用普通的文
12、本編輯器即可編寫,代碼在服務(wù)器端直接執(zhí)行。 (3)ASP源程序在服務(wù)器端執(zhí)行,執(zhí)行結(jié)果返回給客戶端,保證了ASP源程序的安全性。【情境資訊】 (4)ASP源程序在服務(wù)器端執(zhí)行,客戶端只需有執(zhí)行HTML的瀏覽器即可,保證了ASP程序的通用性。 (5)可以使用VB、Java等多種編程語言來開發(fā)ActiveX服務(wù)器組件,從而擴(kuò)充服務(wù)器端程序的功能。 (6)可使用服務(wù)器端腳本來產(chǎn)生客戶端腳本。 (7)ASP提供的內(nèi)置對(duì)象使得腳本的功能更強(qiáng)?!厩榫迟Y訊】ASP的工作原理 當(dāng)用戶在瀏覽器的地址欄中輸入ASP文件的路徑,并按回車鍵觸發(fā)這個(gè)ASP的申請(qǐng)后,瀏覽器將該請(qǐng)求發(fā)送給Web服務(wù)器。Web服務(wù)器接收這些
13、請(qǐng)求并根據(jù)文件的后綴名為.asp判斷這是ASP請(qǐng)求,然后從硬盤或內(nèi)存中讀取正確的ASP文件,將這個(gè)文件發(fā)送到ASP.DLL的特定文件中。ASP文件將會(huì)從頭至尾執(zhí)行并根據(jù)命令要求生成相應(yīng)的HTML文件。最后HTML文件被返回到瀏覽器,用戶的瀏覽器解釋這些HTML文件并將結(jié)果顯示出來。 【情境資訊】搭建ASP的工作平臺(tái) ASP程序是在服務(wù)器端執(zhí)行的,因此要在本地計(jì)算機(jī)上運(yùn)行ASP程序就必須先安裝相應(yīng)的Web服務(wù)器軟件。 IIS是由微軟公司發(fā)布,用于Windows系列操作系統(tǒng)的Web服務(wù)器軟件。 【情境資訊】 PHP是一種運(yùn)行于服務(wù)器端的HTML內(nèi)嵌式的網(wǎng)絡(luò)程序設(shè)計(jì)語言,類似于IIS上的ASP。PH
14、P是Hypertext Preprocessor(超文本預(yù)處理器)的縮寫,作為服務(wù)器端內(nèi)嵌式的腳本語言,它是在服務(wù)器端執(zhí)行的,從瀏覽器端看不到PHP的源代碼,只能看到執(zhí)行結(jié)果?!厩榫迟Y訊】PHP技術(shù)簡(jiǎn)介 PHP以其代碼全部公開、開發(fā)容易、跨平臺(tái)、功能強(qiáng)大以及支持的數(shù)據(jù)庫類型繁多等特點(diǎn)贏得了眾多Web開發(fā)人員的青睞?,F(xiàn)在已經(jīng)成為國內(nèi)外流行的Web開發(fā)工具之一。PHP的優(yōu)勢(shì) (1)PHP的簡(jiǎn)單易用 PHP的語法來源主要是C和C+,這樣就延續(xù)了編寫程序簡(jiǎn)單自由的特點(diǎn),并且PHP也加入了自己的新特點(diǎn),如變量不用定義、變量類型可以改變等,使編寫程序更加簡(jiǎn)便。(2)PHP的強(qiáng)大功能 PHP功能的強(qiáng)大體現(xiàn)在
15、對(duì)數(shù)據(jù)庫提供了廣泛的支持,這使得創(chuàng)建基于數(shù)據(jù)庫的網(wǎng)站變得極為方便。 【情境資訊】(3)PHP的跨平臺(tái)性 PHP在UNIX和Windows平臺(tái)下都可以工作。(4)PHP的開放性 選擇PHP作為開發(fā)工具的一個(gè)很好的理由是PHP的開放性。PHP不僅是免費(fèi)的,而且開放源代碼,任何人都可以無償使用甚至修改、復(fù)制和分發(fā)該軟件。 【情境資訊】【情境資訊】4.JSP運(yùn)行原理 JSP(Java Server Pages)即Java應(yīng)用頁面程序,它是由Sun Microsystems公司倡導(dǎo)且由許多公司共同參與制定的一種動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)。使用JSP可以將網(wǎng)頁中的動(dòng)態(tài)部分和靜態(tài)HTML相分離,以便更好地設(shè)計(jì)動(dòng)態(tài)網(wǎng)頁
16、。這種Web開發(fā)技術(shù)的設(shè)計(jì)目的在于使構(gòu)造基于Web的應(yīng)用程序更加容易和快捷?!厩榫迟Y訊】 JSP的工作方式是請(qǐng)求/應(yīng)答模式。JSP所有的程序都是在服務(wù)器端運(yùn)行的,當(dāng)用戶在客戶端通過瀏覽器向服務(wù)器提交請(qǐng)求之后,服務(wù)器上的JSP程序負(fù)責(zé)處理客戶端的請(qǐng)求,并把處理結(jié)果以HTML的形式返回給客戶端。其中客戶端和JSP的交互是通過HTTP協(xié)議來實(shí)現(xiàn)的,整個(gè)過程中JSP程序?qū)蛻舳藖碚f是不可見的。 【情境資訊】 在具體的交互過程中,客戶端首先和服務(wù)器建立連接,然后用戶通過瀏覽器發(fā)出的請(qǐng)求信息被儲(chǔ)存在Request對(duì)象中并發(fā)送給Web服務(wù)器。JSP引擎根據(jù)JSP文件的指示處理Request對(duì)象,或者根據(jù)實(shí)際
17、需要將Request對(duì)象轉(zhuǎn)發(fā)給由JSP文件所指定的其他的服務(wù)器端組件(如Servlet組件、JavaBean組件或EJB組件等)進(jìn)行處理,處理結(jié)果以Response對(duì)象的方式返回給JSP引擎,JSP引擎和Web服務(wù)器根據(jù)Response對(duì)象最終生成JSP頁面并返回給客戶端瀏覽器。本情境主要任務(wù)學(xué)習(xí)任務(wù)1: JDK安裝配置1學(xué)習(xí)任務(wù)2: Tomcat安裝配置2學(xué)習(xí)任務(wù)1:網(wǎng)上書店首頁創(chuàng)建3學(xué)習(xí)任務(wù)2.1 JDK安裝配置【任務(wù)計(jì)劃】 本任務(wù)主要完成JSP運(yùn)行環(huán)境JDK的下載、安裝以及環(huán)境變量的設(shè)置。要求下載網(wǎng)站選擇正確、下載迅速,JDK安裝和配置熟練、正確,測(cè)試成功。學(xué)習(xí)任務(wù)2.1 JDK安裝配置
18、【任務(wù)實(shí)施】 1. JDK的下載 JDK是Sun公司Java應(yīng)用程序和組件的開發(fā)環(huán)境,是調(diào)試和運(yùn)行JSP所不可缺少的工具。用戶可以從Sun公司的官方網(wǎng)站下載。2. JDK的安裝 安裝過程比較簡(jiǎn)單,運(yùn)行安裝程序JDK1.6,選擇安裝路徑后將會(huì)自動(dòng)完成安裝。學(xué)習(xí)任務(wù)2.1 JDK安裝配置【任務(wù)實(shí)施】3.設(shè)置JDK環(huán)境變量 在不同的操作系統(tǒng)中配置環(huán)境變量的方法有所不同,但本質(zhì)是一樣的。它的作用是讓應(yīng)用程序可以方便快捷地找到所需路徑。配置Java運(yùn)行環(huán)境主要用到的環(huán)境變量有三個(gè)。JAVA_HOME設(shè)定Java的安裝路徑。PATH 它是Windows所固有的,追加JAVA_HOMEbin目錄后,在執(zhí)行J
19、AVA_HOMEbin文件夾下的命令時(shí)就不用輸入長的路徑了,如javac、java等命令。CLASSPATH是運(yùn)行Java非常重要的環(huán)境變量,Java在編譯和運(yùn)行應(yīng)用程序時(shí)都要通過它去找到需要的類文件。 學(xué)習(xí)任務(wù)2.1 JDK安裝配置【任務(wù)評(píng)價(jià)】 評(píng)價(jià)JDK下載、安裝和配置任務(wù)的完成情況:?jiǎn)?dòng)命令行方式,再執(zhí)行java命令,出現(xiàn)如下所示信息,則表示JDK安裝成功。學(xué)習(xí)任務(wù)2.2 Tomcat安裝配置【任務(wù)計(jì)劃】 本任務(wù)主要搭建JSP運(yùn)行服務(wù)器的基本環(huán)境,主要以Tomcat作為本書使用的服務(wù)器,本任務(wù)主要介紹tomcat服務(wù)器的下載以及安裝和配置。學(xué)習(xí)任務(wù)2.2 Tomcat安裝配置【任務(wù)實(shí)施】
20、 1. 下載Tomcat 可以從Apache站點(diǎn)下載。 2. 安裝Tomcat 雙擊下載后的可執(zhí)行文件jakarta-tomcat-6.0.32.exe,選擇安裝路徑 后將會(huì)自動(dòng)完成安裝。學(xué)習(xí)任務(wù)2.2 Tomcat安裝配置【任務(wù)實(shí)施】 3. 測(cè)試安裝是否成功 進(jìn)入Tomcat安裝目錄bin目錄,雙擊startup.bat即可啟動(dòng)Tomcat。 打開IE瀏覽器,在地址欄中輸入http:/localhost:8080,按回車鍵即可打開Tomcat的測(cè)試主頁,表明Tomcat服務(wù)器可以正常運(yùn)行了。 注意:8080為Tomcat默認(rèn)的端口號(hào)。 將編寫的JSP程序文件(如helloworld.jsp)
21、放到Tomcat安裝目錄的webappsROOT中,在瀏覽器地址欄中輸入http:/localhost:8080/helloworld.jsp , 就可以運(yùn)行了。 學(xué)習(xí)任務(wù)2.2 Tomcat安裝配置【任務(wù)評(píng)價(jià)】 本任務(wù)主要完成Web應(yīng)用程序服務(wù)器Tomcat的安裝與配置,從正確下載與安裝Tomcat、正確的配置TOMCAT_HOME系統(tǒng)變量并利用程序測(cè)試安裝是否成功等進(jìn)行評(píng)價(jià)。學(xué)習(xí)任務(wù)2.3 網(wǎng)上書店首頁創(chuàng)建【任務(wù)計(jì)劃】 在任務(wù)中主要學(xué)習(xí)網(wǎng)上書店頁面設(shè)計(jì),界面參考成熟的商業(yè)網(wǎng)站,如:當(dāng)當(dāng)網(wǎng)、卓越亞馬遜網(wǎng)、中國互動(dòng)出版網(wǎng)等?!救蝿?wù)實(shí)施】 根據(jù)系統(tǒng)功能分析,網(wǎng)上書店首頁分為以下幾個(gè)欄目: (1)
22、用戶登錄 作為一個(gè)電子商務(wù)網(wǎng)站,涉及買賣交易,應(yīng)有明確的客戶信息,因此凡是要進(jìn)入購買流程的用戶,必須首先要登錄,以此系統(tǒng)可以獲取到用戶的身份信息。 (2)用戶注冊(cè) 既然有登錄功能,就相應(yīng)地提供一個(gè)用戶賬號(hào)的注冊(cè)功能,以便用戶將自己的身份信息提交給系統(tǒng)。 (3)修改密碼 為了安全,用戶登錄密碼應(yīng)提供修改功能。 學(xué)習(xí)任務(wù)2.3 網(wǎng)上書店首頁創(chuàng)建【任務(wù)實(shí)施】 (4)查看訂單 用戶可以查看自己已經(jīng)買過的書籍。 (5)我的購物車 這是整個(gè)網(wǎng)上書店的核心功能,購物車是用戶在購物過程中存放書籍的,可以將想買的書籍放入購物車,也可以將不想要的書從購物車中刪除,甚至可以清空購物車,整個(gè)過程就和我們?nèi)曩I書一樣
23、方面。 (6)離開書店 對(duì)登錄后的身份注銷,對(duì)同一臺(tái)電腦來說,可以換一個(gè)用戶賬號(hào)登錄,開始新的購書環(huán)節(jié)。 學(xué)習(xí)任務(wù)2.3 網(wǎng)上書店首頁創(chuàng)建【任務(wù)實(shí)施】 (7)管理功能 和現(xiàn)實(shí)的書店一樣,書籍有補(bǔ)貨、下架、統(tǒng)計(jì)銷售等情況,那么作為網(wǎng)上書店也同樣有這些基本要求,這個(gè)信息維護(hù)功能將由網(wǎng)站的系統(tǒng)管理員來操作,主要包括:書籍的添加、刪除、修改、訂單的查看、注冊(cè)用戶的管理等。圖為網(wǎng)上書店的首頁。學(xué)習(xí)任務(wù)2.3 網(wǎng)上書店首頁創(chuàng)建學(xué)習(xí)任務(wù)2.3 網(wǎng)上書店首頁創(chuàng)建【任務(wù)評(píng)價(jià)】 本任務(wù)主要完成網(wǎng)上書店首頁運(yùn)行,從合理設(shè)計(jì)網(wǎng)上書店首頁使其簡(jiǎn)潔明了、操作方便;在自己搭建的JSP運(yùn)行環(huán)境中運(yùn)行網(wǎng)上書店首頁進(jìn)行評(píng)價(jià)。課外
24、拓展練習(xí)學(xué)生成績管理系統(tǒng)首頁建立【學(xué)習(xí)目標(biāo)】 通過對(duì)本學(xué)習(xí)情境的學(xué)習(xí)和實(shí)訓(xùn),使學(xué)生了解動(dòng)態(tài)網(wǎng)站開發(fā) 技術(shù),掌握 JSP基本語法和內(nèi)置對(duì)象的使用,學(xué)會(huì)搭建JSP的運(yùn)行環(huán)境,以切實(shí)提高學(xué)生的 Web程序開發(fā)能力和職業(yè)素質(zhì)?!救蝿?wù)計(jì)劃】使用框架技術(shù)設(shè)計(jì)并實(shí)現(xiàn)本系統(tǒng)的首頁 index.jsp。 該頁面要包 括三個(gè)子網(wǎng)頁,頂部是一個(gè)頁面 banner.htm,左邊是一個(gè)頁面menu.jsp,右面是具體的操作內(nèi)容。 課外拓展練習(xí)學(xué)生成績管理系統(tǒng)首頁建立2. 根據(jù)不同的登錄角色在menu.jsp中顯示不同的系統(tǒng)操作功能 菜單。方法是:當(dāng)用戶登錄時(shí)記錄用戶的ID,根據(jù)這個(gè)ID查 詢數(shù)據(jù)庫得到用戶的角色,在根據(jù)
25、用戶的角色控制顯示的菜單。3. 系統(tǒng)管理員使用系統(tǒng)所有的功能,不受任何限制。 教務(wù)管理人員所使用的功能有:基礎(chǔ)數(shù)據(jù)管理、教務(wù)管理(教師授課信息管理、錄入學(xué)生信息、查詢學(xué)生成績、修改自己的登錄密碼)。老師所能使用的功能有:錄入學(xué)生成績、查詢學(xué)生成績、修改自己的密碼。 學(xué)生所能使用的功能有:查詢學(xué)生成績、修改自己的密碼。Thank You!第一部分 案例模仿項(xiàng)目網(wǎng)上書店學(xué)習(xí)情境3 : 顧客的登錄與注冊(cè) 1.知識(shí)目標(biāo)(1)熟練掌握J(rèn)SP內(nèi)置對(duì)象的各種用法;(2)熟練掌握J(rèn)SP變量和方法的聲明,以及腳本元素的用法;(3)熟練掌握J(rèn)SP中各種指令和動(dòng)作。2.技能目標(biāo)(1)熟練完成對(duì)登錄頁面,表單及表單對(duì)
26、象的應(yīng)用;(2)能編寫表單客戶端確認(rèn)的jsp程序;(3)能完成登錄頁面制作,能獲取用戶名和密碼。學(xué)習(xí)目標(biāo)情境資訊http:/ 了解一下HTML1JSP 基本元素 使用2JSP 指令的 使用3JSP 動(dòng)作 的使用4 JSP內(nèi)置對(duì)象的使用5情境資訊了解一下HTMLhttp:/1. HTML注釋格式:(顯示注釋) 讀者可以在客戶端瀏覽器中查看示例的源文件,會(huì)發(fā)現(xiàn)注釋代碼及內(nèi)容2. JSP注釋格式:(隱式注釋) 隱藏注釋標(biāo)記的字符會(huì)在JSP編譯時(shí)被忽略,web服務(wù)器不會(huì)對(duì)隱藏注釋進(jìn)行編譯,也不會(huì)發(fā)送到客戶端的瀏覽器。1.表單標(biāo)記 : 數(shù)據(jù)提交手段部分2.標(biāo)記 : 3.、標(biāo)記 : 文本信息 文本信息 文
27、本信息 情境資訊了解一下HTMLhttp:/HTML標(biāo)記(1)1情境資訊了解一下HTMLhttp:/4. 標(biāo)記 5.表格標(biāo)記 單元格中的數(shù)據(jù) 單元格中的數(shù)據(jù) HTML標(biāo)記(2)1情境資訊了解一下HTMLhttp:/6.圖像標(biāo)記描述文字 7. 多媒體標(biāo)記 描述文字 案例HTML(1)1HTML標(biāo)記(3)1 無標(biāo)題文檔row 1, cell 1row 1, cell 2row 2, cell 1row 2, cell 2情境資訊了解一下HTMLhttp:/HT ML表格2表格由 標(biāo)簽來定義。每個(gè)表格均有若干行(由 標(biāo)簽定義),每行被分割為若干單元格(由 標(biāo)簽定義)。字母 td 指表格數(shù)據(jù)(tabl
28、e data),即數(shù)據(jù)單元格的內(nèi)容。數(shù)據(jù)單元格可以包含文本、圖片、列表、段落、表單、水平線、表格等等。情境資訊了解一下HTMLhttp:/框架也是一種網(wǎng)頁頁面布局元素,它與表格的不同之處在于表格把頁面分割成小的單元格,而框架把瀏覽器分割成一個(gè)個(gè)小的子窗口,這些子窗口就稱為“框架”,每一個(gè)框架都相當(dāng)于一個(gè)瀏覽器的窗口,這樣就使一個(gè)瀏覽器窗口可以顯示多個(gè)網(wǎng)頁。案例HTML3HTML框架3網(wǎng)頁1:fram.html網(wǎng)頁2:left.html右半部分網(wǎng)頁3:right.html左半部分HTML利用表單可以生成一個(gè)交互的頁面,表單實(shí)現(xiàn)了允許用戶在文檔之間進(jìn)行交互的高級(jí)功能,用戶通過表單可以進(jìn)行高級(jí)的人機(jī)
29、對(duì)話,進(jìn)行數(shù)據(jù)庫查詢,收發(fā)E-mail等。早期的表單只支持客戶端與服務(wù)器端的對(duì)話,用戶通過網(wǎng)頁中的表單與服務(wù)器端的程序通信。1. 表單簡(jiǎn)介表單在實(shí)質(zhì)上實(shí)現(xiàn)了用戶的信息輸入。它通過一些基本的控件,如輸入文本框、下拉列表框及按鈕等,收集用戶的請(qǐng)求信息,然后把這些信息傳給相應(yīng)的處理程序,由這些程序?qū)τ脩舻恼?qǐng)求做出回應(yīng)。表單使用戶不再僅僅是信息的被動(dòng)接受者,而是信息的主動(dòng)請(qǐng)求者。2. 表單中控件的使用表單標(biāo)記為,它的通用的格式為TYPE設(shè)置該控件的類型。如:checkbox,button。NAME確定該控件在整個(gè)文檔中的名稱。情境資訊了解一下HTMLhttp:/HTML表單4情境資訊了解一下HTML
30、HTML定義了可用以放置在表單區(qū)域內(nèi)的屬性與功能選項(xiàng)標(biāo)簽 。http:/功 能標(biāo) 簽說 明文本框 提供輸入單行文字、數(shù)字等數(shù)據(jù)的文本框。 選項(xiàng)按鈕 提供類似收音機(jī)按鈕的單一選項(xiàng)按鈕。 復(fù)選框 提供外觀包含一個(gè)四邊形方塊,可供勾選特定項(xiàng)目的復(fù)選框。 文本區(qū)域 提供大量、多行的文字、數(shù)字等類型的數(shù)據(jù)輸入文本區(qū)域。 下拉列表框 提供具備清單選項(xiàng)的下拉式文本列表。 組合式列表 提供具備清單選項(xiàng)的多行選項(xiàng)文本列表。 傳送按鈕 提供將網(wǎng)頁數(shù)據(jù)內(nèi)容傳送回服務(wù)器的按鈕。 重設(shè)按鈕 提供重設(shè)網(wǎng)頁數(shù)據(jù)內(nèi)容的重設(shè)按鈕。 情境資訊了解一下HTMLhttp:/ 情境資訊JSP基礎(chǔ)http:/JSP頁面可由5種元素組合而
31、成: 普通的HTML標(biāo)記符; JSP標(biāo)記,如指令標(biāo)記、動(dòng)作標(biāo)記; 成員變量和方法; Java程序片; Java表達(dá)式 JSP 指令pageincludetaglibJSP 指令的語法為: JSP 指令包括:情境資訊JSP指令http:/情境資訊JSP指令http:/1、page 指令標(biāo)記: page 指令用來定義整個(gè)JSP頁面的一些屬性和這些屬性的值,屬性值用單引號(hào)或雙引號(hào)括起來??梢杂靡粋€(gè)page指令指定多個(gè)屬性的值 ,也可以使用多個(gè)page指令分別為每個(gè)屬性指定值 . page指令的作用對(duì)整個(gè)JSP頁面有效,與其書寫的位置無關(guān),習(xí)慣把page指令寫在JSP頁面的最前面。例如: 或 情境資訊
32、JSP指令page 指令標(biāo)記:page 指令標(biāo)記可以指定如下屬性的值:contentType、import、language、session、buffer、auotFlush 、isThreadSafe、pageEncoding contentType屬性 contentType 屬性值確定JSP頁面響應(yīng)的MIME(Multipurpose Internet Mail Extention)類型和JSP頁面字符的編碼。 例如: 不允許兩次使用page 指令給contentType屬性指定不同的屬性值 .http:/l language屬性定義JSP頁面使用的腳本語言,該屬性的值目前只能取java
33、。為language屬性指定值的格式:l import 屬性該屬性的作用是為JSP頁面引入Java運(yùn)行環(huán)境提供的包中的類,這樣就可以在JSP頁面的程序片部分、變量及函數(shù)聲明部分、表達(dá)式部分使用包中的類。例如:情境資訊JSP指令http:/ session 屬性用于設(shè)置是否需要使用內(nèi)置的session對(duì)象。session的屬性值可以是true或false。session屬性默認(rèn)的屬性值是true。l buffer 屬性內(nèi)置輸出流對(duì)象out負(fù)責(zé)將服務(wù)器的某些信息或運(yùn)行結(jié)果發(fā)送到客戶端顯示,buffer屬性用來指定out設(shè)置的緩沖區(qū)的大小或不使用緩沖區(qū)。例如:buffer屬性的默認(rèn)值是8kb 。bu
34、ffer屬性可以取值 none,設(shè)置out不使用緩沖區(qū)。l autoFlush 屬性指定out的緩沖區(qū)被填滿時(shí),緩沖區(qū)是否自動(dòng)刷新。 isThreadSafe 屬性用來設(shè)置JSP頁面是否可多線程訪問。 情境資訊JSP指令http:/2.include 指令標(biāo)記如果需要在JSP頁面內(nèi)某處整體嵌入一個(gè)文件,就可以考慮使用include指令標(biāo)記,其語法格式如下: 如果該文件和當(dāng)前JSP頁面在同一Web服務(wù)目錄中,那么“文件的URL”就是文件的名字;如果該文件在JSP頁面所在的Web服務(wù)目錄的一個(gè)子目錄中,比如fileDir子目錄中,那么“文件的URL”就是“fileDir/文件的名字”。 靜態(tài)插入,
35、就是當(dāng)前JSP頁面和插入的文件合并成一個(gè)新的JSP頁面,然后JSP引擎再將這個(gè)新的JSP頁面轉(zhuǎn)譯成Java文件。 情境資訊JSP指令http:/JSP指令標(biāo)記模仿試做(案例)include指令實(shí)例Ex4_3.html部分顯示結(jié)果http:/頁面使用include指令包含了Ex4_3.html和Ex4_4.jsp兩個(gè)文件http:/JSP指令標(biāo)記模仿試做(案例)Ex44.jsp部分顯示結(jié)果/bodyhttp:/JSP指令標(biāo)記模仿試做(案例)情境資訊JSP動(dòng)作1. include 動(dòng)作標(biāo)記 2. param動(dòng)作標(biāo)記 3. forward動(dòng)作標(biāo)記 4. useBean 動(dòng)作標(biāo)記 1、include
36、動(dòng)作標(biāo)記 或 param子標(biāo)記 include 動(dòng)作標(biāo)記是在JSP頁面運(yùn)行時(shí)才處理文件,被處理的文件在邏輯和語法上獨(dú)立于當(dāng)前JSP頁面.http:/情境資訊JSP動(dòng)作2、param動(dòng)作標(biāo)記 param標(biāo)記以“名字值”對(duì)的形式為其它標(biāo)記提供附加信息. param標(biāo)記不能獨(dú)立使用,需作為jsp:include、jsp:forward、jsp:plugin標(biāo)記的子標(biāo)記來使用。param動(dòng)作標(biāo)記語法格式:當(dāng)該標(biāo)記與jsp:include動(dòng)作標(biāo)記一起使用時(shí),可以將param標(biāo)記中的值傳遞到include動(dòng)作標(biāo)記要加載的文件中去,被加載的JSP文件可以使用Tomcat服務(wù)器提供的request內(nèi)置對(duì)象獲取
37、include動(dòng)作標(biāo)記的param子標(biāo)記中name屬性所提供的值 http:/情境資訊JSP動(dòng)作3、forward 動(dòng)作標(biāo)記 該指令的作用是:從該指令處停止當(dāng)前頁面的繼續(xù)執(zhí)行,而轉(zhuǎn)向執(zhí)行page屬性指定的JSP頁面。 或 param子標(biāo)記http:/情境資訊JSP動(dòng)作4、useBean 動(dòng)作標(biāo)記 該標(biāo)記用來創(chuàng)建并使用一個(gè)Javabean,是非常重要的一個(gè)動(dòng)作標(biāo)記,我們將在第4章詳細(xì)討論。Sun公司的倡導(dǎo)是:用HTML完成JSP頁面的靜態(tài)部分,用Javabean完成動(dòng)態(tài)部分,實(shí)現(xiàn)真正意義上的靜態(tài)和動(dòng)態(tài)分離http:/情境資訊JSP動(dòng)作JSP動(dòng)作標(biāo)記模仿試做(案例)jsp:include示例比較i
38、nclude和jsp:include用戶名:密碼:http:/jsp:include示例參數(shù)examp1的值:參數(shù)examp2的值:http:/JSP動(dòng)作標(biāo)記模仿試做(案例)JSP動(dòng)作標(biāo)記模仿試做(案例)jsp:include示例這是一個(gè)jsp:include的示例jsp:param name=examp1 value=/jsp:param name=examp2 value=/http:/情境資訊JSP內(nèi)置對(duì)象1. 內(nèi)置對(duì)象-request2.內(nèi)置對(duì)象-reponse3.內(nèi)置對(duì)象-out4.內(nèi)置對(duì)象session 5. 內(nèi)置對(duì)象-Application6. 內(nèi)置對(duì)象7. 內(nèi)置對(duì)象-confi
39、g8. 內(nèi)置對(duì)象-Exception http:/1. include 動(dòng)作標(biāo)記 2. param動(dòng)作標(biāo)記 JAVA內(nèi)置對(duì)象Request對(duì)象方法成員http:/分 類方 法說 明取得用戶參數(shù) GetParameter(strName)返回指定變量名稱的數(shù)據(jù)。 GetParameterValues(strName)返回所有變量名稱的集合,集合中的內(nèi)容為各個(gè)傳送的變量名稱。 GetParameterNames()返回指定名稱的數(shù)組,若用戶所輸入的數(shù)據(jù)為復(fù)數(shù),且變量名稱相同,則使用此方法來取得復(fù)數(shù)的數(shù)組數(shù)據(jù)。 取得系統(tǒng)信息 getProtocol()返回通信協(xié)議的方式 getRemoteAddr(
40、)返回客戶端用戶的IP地址 getRemoteHost()返回客戶端用戶的主機(jī)名稱 getRemoteHost()返回發(fā)出請(qǐng)求的方式,如http、ftp、telnet getScheme()返回發(fā)出請(qǐng)求的方式,如http、ftp、telnet getServerName()返回服務(wù)器主機(jī)的名稱 getServerPort()返回服務(wù)器主機(jī)的連接端口號(hào)碼,如:8080 getRealPath()返回目前虛擬路徑的真實(shí)路徑 getMethod()返回傳送數(shù)據(jù)的方式,如:GET、POST getQueryString()返回附在網(wǎng)址列后的字符串?dāng)?shù)據(jù) getRequestURI()返回請(qǐng)求的URI字符
41、串,不包含網(wǎng)址列后的查詢字符串,如“http:/myCom/jsp?data=helloworld!”會(huì)傳回“/myCom/jsp” getServletPath()傳回程序的相對(duì)路徑與文件名 取得標(biāo)頭信息 getHeader(String name)返回名稱為name的請(qǐng)求標(biāo)頭內(nèi)容 getHeaderNames()返回所有請(qǐng)求標(biāo)頭名稱的集合 第一部分 案例模仿項(xiàng)目網(wǎng)上書店學(xué)習(xí)情境3 顧客的登錄與注冊(cè) 學(xué)習(xí)任務(wù)1:主頁布局設(shè)計(jì) 學(xué)習(xí)任務(wù)3.1 主頁布局設(shè)計(jì) 在本任務(wù)中主要實(shí)現(xiàn)靜態(tài)的頁面設(shè)計(jì),網(wǎng)上書店的頁面布局可以參考成熟的商業(yè)網(wǎng)站,如:當(dāng)當(dāng)網(wǎng)、卓越亞馬遜網(wǎng)、中國互動(dòng)出版網(wǎng)等。在實(shí)施主頁設(shè)計(jì)之前
42、要掌握HTML和DW的相關(guān)知識(shí)。【任務(wù)計(jì)劃】 JSP借由標(biāo)簽所構(gòu)成的表單區(qū)塊中,取得用戶在其中特定字段輸入的數(shù)據(jù)內(nèi)容 。http:/學(xué)習(xí)任務(wù)3.1 主頁布局設(shè)計(jì) 網(wǎng)頁的布局設(shè)計(jì),就是指網(wǎng)頁中圖像和文字之間的位置關(guān)系,簡(jiǎn)單來說也可以稱之為網(wǎng)頁排版。從首頁圖示中可以看出此網(wǎng)頁的布局設(shè)計(jì)如圖: 網(wǎng)站logo圖片導(dǎo)航菜單 內(nèi)容頁面底部學(xué)習(xí)任務(wù)3.1 主頁布局設(shè)計(jì)【任務(wù)實(shí)施】學(xué)習(xí)任務(wù)3.1主頁布局設(shè)計(jì)【任務(wù)評(píng)價(jià)】 本任務(wù)對(duì)整個(gè)系統(tǒng)的主頁面設(shè)計(jì)進(jìn)行了背景知識(shí)介紹和頁面顯示方案的設(shè)計(jì):包括HTML基本知識(shí)、表格的應(yīng)用、框架結(jié)構(gòu)的設(shè)計(jì)以及表單的使用,在主頁面設(shè)計(jì)中要求的效果和使用的技術(shù)進(jìn)行了分析。根據(jù)知識(shí)鋪墊
43、和任務(wù)布置的流程,在接受主頁面設(shè)計(jì)的時(shí)候更能清晰的知道所學(xué)的知識(shí)點(diǎn)在本項(xiàng)目中是如何運(yùn)用的。本任務(wù)主要從頁面布局、頁面元素的使用以及能否正確運(yùn)用jsp指令及動(dòng)作來評(píng)價(jià)完成情況。第一部分 案例模仿項(xiàng)目網(wǎng)上書店學(xué)習(xí)情境3 顧客的登錄與注冊(cè) 學(xué)習(xí)任務(wù)2:用戶注冊(cè) 學(xué)習(xí)任務(wù)3.2 用戶注冊(cè)務(wù)3.2 用戶注冊(cè)【任務(wù)計(jì)劃】 在本任務(wù)中主要設(shè)計(jì)了用戶注冊(cè),用戶應(yīng)該分為3個(gè)不同的類型,普通用戶、注冊(cè)用戶和管理員用戶,根據(jù)用戶的不同類型賦予不同的權(quán)限。完成本項(xiàng)目的注冊(cè)頁面用戶注冊(cè)實(shí)現(xiàn)流程1、靜態(tài)頁面實(shí)現(xiàn)方法:可以用DW軟件添加表單和按鈕、圖片等2、動(dòng)態(tài)頁面實(shí)現(xiàn)方法:用jsp內(nèi)置對(duì)象對(duì)用戶注冊(cè)信息的獲取,并反饋?zhàn)?cè)
44、信息給顧客3、注冊(cè)頁面userRegister.jsp:表單與按鈕學(xué)習(xí)任務(wù)3.2 用戶注冊(cè)務(wù)3.2 用戶注冊(cè)【任務(wù)實(shí)施】靜態(tài)頁面-可以用DW軟件添加表單和按鈕、圖片等動(dòng)態(tài)頁面-用jsp內(nèi)置對(duì)象對(duì)用戶注冊(cè)信息的獲取,并反饋?zhàn)?cè)信息給顧客注冊(cè)頁面userRegister.jsp:表單與按鈕學(xué)習(xí)任務(wù)3.2 用戶注冊(cè)學(xué)習(xí)任務(wù)3.2 用戶注冊(cè)務(wù)3.2 用戶注冊(cè)用戶注冊(cè)成功頁面:userRegisterSuccess.jsp【任務(wù)評(píng)價(jià)】 在JSP中,服務(wù)器端與客戶端交互最常用的方法就是采用表單交互數(shù)據(jù)。本節(jié)課的演示試驗(yàn)比較簡(jiǎn)單,根據(jù)目前大部分交互頁面的設(shè)計(jì),可以在以下幾個(gè)方面進(jìn)行評(píng)價(jià):能否利用JavaSc
45、ript語句驗(yàn)證數(shù)據(jù)合法性,驗(yàn)證通過后數(shù)據(jù)才會(huì)提交;在表單中對(duì)POST和GET方法的使用;能否使用request對(duì)象獲取顧客信息的有效期(關(guān)閉本次連接之后情景);學(xué)習(xí)任務(wù)3.2 用戶注冊(cè)務(wù)3.2 用戶注冊(cè)第一部分 案例模仿項(xiàng)目網(wǎng)上書店學(xué)習(xí)情境3 顧客的登錄與注冊(cè) 學(xué)習(xí)任務(wù)3:用戶登錄 【任務(wù)計(jì)劃】 在本任務(wù)中主要設(shè)計(jì)了用戶登錄操作,用戶應(yīng)該分為3個(gè)不同的類型,普通用戶、注冊(cè)用戶和管理員用戶,根據(jù)用戶的不同類型賦予不同的權(quán)限。在用戶登錄的時(shí)候注意登錄成功頁面的鏈接。 用戶注冊(cè) 用戶注冊(cè)學(xué)習(xí)任務(wù)3.3 用戶登錄學(xué)習(xí)任務(wù)3.3 用戶登錄【任務(wù)實(shí)施】1、顧客信息的提交表單2、顧客信息的獲取reques
46、t對(duì)象3、顧客信息的顯示out對(duì)象 任務(wù)實(shí)施 用戶登錄用戶登錄頁面:userLogin.jsp登錄成功轉(zhuǎn)到index.jsp頁面任務(wù)實(shí)施 功能實(shí)現(xiàn)技術(shù)關(guān)鍵問題:如何把顧客信息從登錄頁面的表單里獲取,上傳遞給服務(wù)器,并讓服務(wù)器把信息顯示出來解決方案:request對(duì)象主要實(shí)現(xiàn)信息在不同頁面之間的傳遞,可以獲取客戶提交的數(shù)據(jù)、網(wǎng)頁地址后帶的參數(shù)等。userLogin.jsp提交表單index.jsp任務(wù)實(shí)施任務(wù)分析1、顧客信息的提交表單(userlogin.jsp)表單一般格式: 提交手段案例: 帳號(hào): 密碼: 任務(wù)實(shí)施任務(wù)分析2、顧客信息的獲取request對(duì)象(index.jsp) 內(nèi)置對(duì)象r
47、equest封裝了用戶提交的信息,使用該對(duì)象可以獲取用戶提交的信息,其中g(shù)etParameter()方法獲得指定名稱的客戶端提交的參數(shù)值。使用方法為:request.getParameter(String str)案例:request.getParameter(“username”);功能:獲取表單中username文本框的內(nèi)容;3、顧客信息的顯示out對(duì)象(index.jsp) 利用println方法out.println(request.getParameter(username);功能:輸出文本框username的內(nèi)容任務(wù)實(shí)施任務(wù)分析 利用表達(dá)式輸出功能:輸出文本框username的內(nèi)容
48、任務(wù)實(shí)施實(shí)現(xiàn)步驟1、確定實(shí)現(xiàn)功能通過服務(wù)器的內(nèi)置對(duì)象request實(shí)現(xiàn)信息傳遞2、系統(tǒng)設(shè)計(jì)登錄界面login.jsp接收登錄信息頁面index.jsp3、代碼的編寫4、系統(tǒng)測(cè)試5、代碼的編寫任務(wù)實(shí)施示范引導(dǎo)登錄頁面userLogin.jsp 用 戶 登 陸 帳號(hào): 密碼: div style=font-size:16px返回 利用表單確定頁面轉(zhuǎn)向 你還沒有登錄 ,歡迎您光臨! 今天是月日 任務(wù)實(shí)施關(guān)鍵代碼演示登錄成功頁面index.jsp判斷是否輸入姓名顯示日期顯示用戶姓名學(xué)習(xí)任務(wù)3.3 用戶登錄【任務(wù)評(píng)價(jià)】 表單是實(shí)現(xiàn)瀏覽器和網(wǎng)站交互的重要手段,用戶權(quán)限的設(shè)定是本節(jié)的重點(diǎn)。本任務(wù)主要從表單客
49、戶端確認(rèn)的JSP腳本實(shí)現(xiàn),常用內(nèi)置對(duì)象request、session、out的功能和用法,登錄功能的實(shí)現(xiàn)效果方面考查。同步拓展 成績錄入【學(xué)習(xí)目標(biāo)】通過對(duì)本學(xué)習(xí)情境的學(xué)習(xí)和實(shí)訓(xùn),使學(xué)生掌握連接數(shù)據(jù)庫的 方法,并能熟練對(duì)數(shù)據(jù)庫檢索、添加、修改和刪除記錄。【任務(wù)計(jì)劃】1.完成頁面 core_add.jsp 頁面的設(shè)計(jì),該頁面中有三個(gè) HTML表格,上面的表格用于選擇要錄入學(xué)生成績的班級(jí)和對(duì)應(yīng)的課程,當(dāng)選擇并按“提交”按鈕后,就會(huì)出現(xiàn)第二個(gè)HTML表格:第二個(gè)表格顯示了選中班級(jí)已有的課程成績,在課程信息這一列中的輸入框中可修改對(duì)應(yīng)的學(xué)生課程成績,按“保存成績”按鈕就會(huì)將輸入的學(xué)生成績保存到數(shù)據(jù)庫中;
50、第三個(gè)表格用于顯示一些提示信息。 2. 完成頁面core_save.jsp的設(shè)計(jì),單擊“保存成績”按鈕,會(huì)把數(shù)據(jù)提交到core_save.jsp頁面。Thank You!第一部分 案例模仿項(xiàng)目網(wǎng)上書店學(xué)習(xí)情境4 圖書管理 JSP開發(fā)離不開JDBC數(shù)據(jù)庫,幾乎所有的JSP項(xiàng)目都要使用數(shù)據(jù)庫,所以掌握J(rèn)DBC數(shù)據(jù)庫編程技術(shù)非常重要,本項(xiàng)目的目標(biāo)是掌握J(rèn)SP中使用數(shù)據(jù)庫的方法,對(duì)于網(wǎng)上書店的圖書數(shù)據(jù),也需要寫入數(shù)據(jù)庫。本項(xiàng)目就將對(duì)數(shù)據(jù)庫訪問進(jìn)行說明,并完成網(wǎng)上書店數(shù)據(jù)管理的相關(guān)任務(wù)。1.知識(shí)目標(biāo)(1)掌握jdbc基本概念,掌握J(rèn)DBC連接數(shù)據(jù)庫的工作原理、連接方式和連接過程;(2)熟練掌握純JAVA
51、驅(qū)動(dòng)程序連接各種數(shù)據(jù)庫;(3)熟練掌握網(wǎng)上書店數(shù)據(jù)庫中書籍信息的添加、刪除、更新及顯示。2.技能目標(biāo)(1)能獨(dú)立設(shè)計(jì)網(wǎng)上書店數(shù)據(jù)庫;(2)能安裝數(shù)據(jù)庫管理系統(tǒng),建立數(shù)據(jù)庫以及表;(3)能按照規(guī)范的JDBC開發(fā)步驟實(shí)現(xiàn)網(wǎng)上書店項(xiàng)目的應(yīng)用。學(xué)習(xí)目標(biāo)一、JDBC概述二、JDBC驅(qū)動(dòng)1JDBC-ODBC橋加ODBC驅(qū)動(dòng)程序 2本地API 3JDBC網(wǎng)絡(luò)純Java驅(qū)動(dòng)程序 4本地協(xié)議純Java驅(qū)動(dòng)程序 三、連接數(shù)據(jù)庫的常用方式1注冊(cè)JDBC驅(qū)動(dòng)程序。2建立到數(shù)據(jù)庫的連接。3創(chuàng)建SQL語句。4執(zhí)行SQL語句。5處理結(jié)果。6從數(shù)據(jù)庫斷開連接。情境資訊情境資訊JDBC概述JDBC是一種可用于執(zhí)行SQL語句的J
52、avaAPI應(yīng)用程序設(shè)計(jì)接口)。它由一些Java語言編寫的類和界面組成。JDBC提供了一種標(biāo)準(zhǔn)的應(yīng)用程序設(shè)計(jì)接口,使開發(fā)人員可以用純Java語言編寫完整的數(shù)據(jù)庫應(yīng)用程序。JDBC是由SUN公司免費(fèi)提供的。操作不同的數(shù)據(jù)庫僅有連接方式上的差異。 (下圖:使用JDBC操作數(shù)據(jù)庫)應(yīng)用程序JDBC使用連接使用JDBC之應(yīng)用程序所駐留的計(jì)算機(jī)數(shù)據(jù)庫JDBC要與數(shù)據(jù)庫建立連接,主要通過四個(gè)步驟1、裝載數(shù)據(jù)庫驅(qū)動(dòng)程序2、與數(shù)據(jù)庫建立連接3、將SQL語句傳遞給數(shù)據(jù)庫,執(zhí)行操作,返回得到結(jié)果4、關(guān)閉數(shù)據(jù)庫連接請(qǐng)求 應(yīng)用服務(wù)器響應(yīng)JSP頁面數(shù)據(jù)庫服務(wù)器客戶端操作結(jié)果連接操作情境資訊JDBC概述情境資訊JDBC驅(qū)
53、動(dòng)目前比較常見的JDBC驅(qū)動(dòng)程序可分為以下四個(gè)種類: (1)JDBC-ODBC橋加ODBC驅(qū)動(dòng)程序 JavaSoft橋產(chǎn)品利用ODBC驅(qū)動(dòng)程序提供JDBC訪問。注意,必須將ODBC二進(jìn)制代碼(許多情況下還包括數(shù)據(jù)庫客戶機(jī)代碼)加載到使用該驅(qū)動(dòng)程序的每個(gè)客戶機(jī)上。因此,這種類型的驅(qū)動(dòng)程序最適合于企業(yè)網(wǎng)(這種網(wǎng)絡(luò)上客戶機(jī)的安裝不是主要問題),或者是用Java編寫的三層結(jié)構(gòu)的應(yīng)用程序服務(wù)器代碼。(2)本地API 這種類型的驅(qū)動(dòng)程序把客戶機(jī)API上的JDBC調(diào)用轉(zhuǎn)換為Oracle、Sybase、Informix、DB2或其它DBMS的調(diào)用。注意,象橋驅(qū)動(dòng)程序一樣,這種類型的驅(qū)動(dòng)程序要求將某些二進(jìn)制代碼
54、加載到每臺(tái)客戶機(jī)上。 情境資訊JDBC驅(qū)動(dòng)(3)JDBC網(wǎng)絡(luò)純Java驅(qū)動(dòng)程序 這種驅(qū)動(dòng)程序?qū)DBC轉(zhuǎn)換為與DBMS無關(guān)的網(wǎng)絡(luò)協(xié)議,之后這種協(xié)議又被某個(gè)服務(wù)器轉(zhuǎn)換為一種DBMS協(xié)議。這種網(wǎng)絡(luò)服務(wù)器中間件能夠?qū)⑺募僇ava客戶機(jī)連接到多種不同的數(shù)據(jù)庫上。所用的具體協(xié)議取決于提供者。通常,這是最為靈活的JDBC驅(qū)動(dòng)程序。有可能所有這種解決方案的提供者都提供適合于Intranet用的產(chǎn)品。為了使這些產(chǎn)品也支持Internet訪問,它們必須處理Web所提出的安全性、通過防火墻的訪問等方面的額外要求。幾家提供者正將JDBC驅(qū)動(dòng)程序加到他們現(xiàn)有的數(shù)據(jù)庫中間件產(chǎn)品中。 (4)本地協(xié)議純Java驅(qū)動(dòng)程序
55、這種類型的驅(qū)動(dòng)程序?qū)DBC調(diào)用直接轉(zhuǎn)換為DBMS所使用的網(wǎng)絡(luò)協(xié)議。這將允許從客戶機(jī)機(jī)器上直接調(diào)用DBMS服務(wù)器,是Intranet訪問的一個(gè)很實(shí)用的解決方法。由于許多這樣的協(xié)議都是專用的,因此數(shù)據(jù)庫提供者自己將是主要來源,有幾家提供者已在著手做這件事了。 1使用JDBC-ODBC Bridge橋接方式連接數(shù)據(jù)庫 使用JDBC-ODBC橋接器連接數(shù)據(jù)庫的原理如圖所示。應(yīng)用程序只需建立JDBC和ODBC之間的連接,即所謂的JDBC-ODBC橋接器,而和數(shù)據(jù)庫的連接由ODBC完成。這種方法通過建立ODBC數(shù)據(jù)源而不是直接連接數(shù)據(jù)庫的方式屏蔽了不同數(shù)據(jù)庫的異構(gòu)性,在需要更換數(shù)據(jù)庫系統(tǒng)時(shí),操作非常簡(jiǎn)單
56、。然而,這種方法也使得應(yīng)用程序依賴于ODBC,移植性較差,即應(yīng)用程序所駐留的計(jì)算機(jī)必須提供ODBC。情境資訊連接數(shù)據(jù)庫的常用方式2使用純Java數(shù)據(jù)庫驅(qū)動(dòng)程序連接JDBC提供的API能夠通過純Java數(shù)據(jù)庫驅(qū)動(dòng)程序轉(zhuǎn)換為數(shù)據(jù)庫管理系統(tǒng)所使用的專用協(xié)議來實(shí)現(xiàn)和特定的數(shù)據(jù)庫系統(tǒng)交互信息,其原理如圖所示。情境資訊連接數(shù)據(jù)庫的常用方式情境資訊連接MYSQL數(shù)據(jù)庫實(shí)例publicclassInsertInfo publicstaticvoidmain(Stringargs) try /1注冊(cè)數(shù)據(jù)庫JDBC驅(qū)動(dòng) Class.forName(com.mysql.jdbc.Driver );/2創(chuàng)建與數(shù)據(jù)庫之
57、間的連接 Connectioncon=DriverManager.getConnection(jdbc:mysql:/ localhost:3306/test,root,); /3創(chuàng)建用于轉(zhuǎn)換并發(fā)送SQL語句的Statement對(duì)象 PreparedStatementpstm=con.prepareStatement(insertinto employee(sex,name,age)values(?,?,?); /4執(zhí)行SQL for(inti=0;i10;i+) pstm.setString(1,female); pstm.setString(2,name+i); pstm.setInt(3
58、,i); pstm.executeUpdate();/step4and5 /5如果是查詢SQL,還要處理查詢結(jié)果,這里是插入語句,因此沒有查詢結(jié)果 /6釋放JDBC對(duì)象以及建立的連接 pstm.close(); con.close(); System.out.println(信息已經(jīng)插入到表中); catch(SQLExceptione) System.out.println(插入失敗); e.printStackTrace(System.out); System.out.println(錯(cuò)誤代碼is:+e.getErrorCode(); System.out.println(SQL狀態(tài)is:
59、+e.getSQLState(); catch(Exceptione) e.printStackTrace(System.out); 第一部分 案例模仿項(xiàng)目網(wǎng)上書店學(xué)習(xí)情境4 圖書管理 學(xué)習(xí)任務(wù)1:圖書管理的前期準(zhǔn)備 學(xué)習(xí)任務(wù)4.1 圖書管理的前期準(zhǔn)備【任務(wù)計(jì)劃】 本任務(wù)主要是設(shè)計(jì)完善網(wǎng)上書店數(shù)據(jù)庫,數(shù)據(jù)庫設(shè)計(jì)的優(yōu)劣對(duì)保證系統(tǒng)的安全性和高效性非常重要,本任務(wù)要建立網(wǎng)上書店數(shù)據(jù)庫并連接成功。設(shè)計(jì)圖書管理系統(tǒng)用戶數(shù)據(jù)庫,建立用戶表,設(shè)計(jì)注冊(cè)用戶界面,將用戶注冊(cè)信息寫入數(shù)據(jù)庫,下次登錄使用。學(xué)習(xí)任務(wù)4.1 圖書管理的前期準(zhǔn)備【任務(wù)實(shí)施】 網(wǎng)上書店數(shù)據(jù)庫詳細(xì)設(shè)計(jì)如下數(shù)據(jù)庫test庫總共有五張表,表與表
60、之間存在一定的關(guān)系,具體設(shè)計(jì)如下:(1)管理員信息表admininfo管理員信息表admininfo用來保存管理員的帳號(hào)和密碼和管理員的類別,結(jié)構(gòu)如圖所示。步驟1: 學(xué)習(xí)任務(wù)4.1 圖書管理的前期準(zhǔn)備【任務(wù)實(shí)施】(2)圖書信息表GoodsInfo圖書信息表GoodsInfo用來保存圖書信息,圖書ID、圖書名稱、圖示價(jià)格、圖書類別、圖書數(shù)量、圖書上架日期、圖書圖片、圖書瀏覽量、圖書作者、圖書信息,結(jié)構(gòu)如圖所示。(3)用戶信息表UserInfo用戶信息表UserInfo用來保存用戶的信息,和用戶的書評(píng)信息,結(jié)構(gòu)如圖所示。(4)訂單貨物表OrderGoods訂單貨物表OrderGoods用于保存每一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023七年級(jí)歷史上冊(cè) 第四單元 三國兩晉南北朝時(shí)期:政權(quán)分立與民族交融 第20課 魏晉南北朝的科技與文化教學(xué)設(shè)計(jì) 新人教版
- 《線隨心走》(教學(xué)設(shè)計(jì))-2024-2025學(xué)年蘇少版(2024)美術(shù)一年級(jí)下冊(cè)
- 2023九年級(jí)語文上冊(cè) 第六單元 名著導(dǎo)讀《水滸傳》 古典小說的閱讀教學(xué)設(shè)計(jì) 新人教版
- 《第三單元 創(chuàng)建交互動(dòng)畫 第14課 在網(wǎng)站上發(fā)布動(dòng)畫 把動(dòng)畫發(fā)布成HTML文件》教學(xué)設(shè)計(jì)教學(xué)反思-2023-2024學(xué)年初中信息技術(shù)人教版八年級(jí)上冊(cè)
- Unit 3 Animal Friends.Section A(1a-3)課時(shí)備課教案 2024-2025學(xué)年魯教版(五四學(xué)制)(2024)六年級(jí)英語下冊(cè)
- Starter Unit 2 Section B 1a-2b,Project教學(xué)設(shè)計(jì)2024-2025學(xué)年人教版英語七年級(jí)上冊(cè)
- 一年級(jí)信息技術(shù)上冊(cè) 生活和學(xué)習(xí)中的好幫手-信息技術(shù) 1教學(xué)設(shè)計(jì) 河大版
- 個(gè)人簡(jiǎn)歷-競(jìng)聘者自我呈現(xiàn)方案
- 7 健康看電視(教學(xué)設(shè)計(jì))2024-2025學(xué)年統(tǒng)編版道德與法治四年級(jí)上冊(cè)
- Module 8 Story time Unit 2 Goldilocks hurried out of the house 教學(xué)設(shè)計(jì)-2023-2024學(xué)年外研版英語七年級(jí)下冊(cè)
- DL-T-1878-2018燃煤電廠儲(chǔ)煤場(chǎng)盤點(diǎn)導(dǎo)則
- 《扣件式鋼管腳手架安全技術(shù)規(guī)范》JGJ130-2023
- 《2022年上海市初中語文課程終結(jié)性評(píng)價(jià)指南》中規(guī)定的150個(gè)文言實(shí)詞
- 《鐵道概論鐵路車站》PPT課件
- T∕CNTAC 22-2018 絨毛織物掉毛性的試驗(yàn)方法
- TI-BQ40Z50-軟件(課堂PPT)
- 建設(shè)項(xiàng)目3000萬元以下估算投資額分檔收費(fèi)標(biāo)準(zhǔn)
- 《禮儀培訓(xùn)》PPT課件
- 歷代皇帝年號(hào)表
- 超星爾雅學(xué)習(xí)通《時(shí)間管理》章節(jié)測(cè)試含答案
- 110ZM241塔型圖
評(píng)論
0/150
提交評(píng)論