freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

javaweb程序設(shè)計資料教案-在線瀏覽

2025-06-03 12:31本頁面
  

【正文】 sp:forward動作指令【教學(xué)難點】page指令、include指令、tablib指令、jsp:include動作指令、jsp:forward動作指令【教學(xué)方法】講解、討論【教學(xué)地點】教學(xué)樓、綜合樓【課時安排】4課時【教學(xué)過程】 制作第一個JSP頁面 任務(wù)描述與實現(xiàn)在Jsp文件中定義方法實現(xiàn)兩個數(shù)的加法定義方法實現(xiàn)兩個數(shù)的加法,調(diào)用其計算1+2并顯示結(jié)果,如圖21所示。在項目的chapter2文件夾中,單擊右鍵選擇New→JSP File選項,彈出如圖22所示的對話框,在File ,單擊Finish之后進入JSP頁面編輯窗口,輸入代碼如程序21。腳本元素用來嵌入Java代碼,這些Java代碼將成為轉(zhuǎn)換得到的Servlet的一部分;JSP指令元素用來從整體上控制Servlet的結(jié)構(gòu);動作元素用來引入現(xiàn)有的組件或者控制JSP引擎的行為。其語法格式為%! 聲明1;聲明2;……%。下邊進行一個變量的聲明,如程序22。格式為: % Java代碼段1 Java代碼段2 …… % 這種Java代碼在Web服務(wù)器響應(yīng)請求時就會運行。 表達式 %= % JSP表達式可以把JSP頁面中的數(shù)據(jù)直接輸出到頁面,其格式為: %=表達式 % 表達式一次只能使用一個表達式,并且該表達式是完整的。如程序24,進行了變量輸出這種代碼段的主要功能是輸出一個變量或常量,有時候?qū)⑵浣凶霰磉_式輸出。 注釋在JSP中支持兩種注釋,一種是顯式注釋,這種注釋客戶端允許查看的;另一種是隱式注釋,這種注釋客戶端是看不到的。1.JSP文件命名JSP文件名稱要以小寫字母命名,名稱要體現(xiàn)出該頁面的意義,最好能夠與模塊名稱聯(lián)系在一起。它們并不直接產(chǎn)生任何可見的輸出,而只是告訴引擎如何處理其余的JSP頁面。JSP指令一般語法形式為: % 指令名稱 屬性=“值”% 1.page指令page指令就是通過設(shè)置內(nèi)部的多個屬性來定義JSP文件中的全局特性。如果沒有對屬性進行設(shè)置,JSP將使用默認(rèn)指令屬性值。Include指令語法格式為: % include file=”被包含的文件路徑”% inlcude也被稱為靜態(tài)包含指令,包含的文件可以是JSP文件、HTML文件、文本文件和Java程序段。,其主要采用include指令完成不同類型文件的包含。Taglib指令的語法為: % taglib uri=”tagLibraryURI” prefix=”tagPrefix” % uri是一個URI標(biāo)識標(biāo)記庫描述器。Prefix定義一個prefix:tagname形式的字符串前綴,用于定義定制的標(biāo)記。網(wǎng)站主題為產(chǎn)品網(wǎng)站,主要包括網(wǎng)站首頁、產(chǎn)品和下載頁面等,效果如圖210~212所示。開發(fā)過程采用Eclipse和Dreamweaver搭配開發(fā),設(shè)計顯示界面部分全部用Dreamweaver實現(xiàn),JSP程序部分在Eclipse中編寫,最后在Eclipse中測試運行。利用這些標(biāo)記可以達到控制Servlet引擎的作用,如動態(tài)的插入文件,調(diào)用JavaBean,頁面重定向等,這類標(biāo)記稱為JSP動作標(biāo)記。 擴展——jsp:forward的使用jsp:forward動作指令表示把當(dāng)前的頁面控制權(quán)轉(zhuǎn)向另外一個對象,該對象可以是一個HTML文件、JSP文件或者一個Servlet文件。param1 187。value1 187。param2 187。value2 187。【教學(xué)小結(jié)】 本章主要介紹了JSP頁面的組成、指令、動作等技術(shù),重點介紹了JSP的page指令、include指令的使用,jsp:include、jsp:forward等動作指令的使用。課題:第三章 JSP內(nèi)置對象【教學(xué)目標(biāo)】掌握J(rèn)SP常用內(nèi)置對象及使用方法【教學(xué)重點】JSP內(nèi)置對象【教學(xué)難點】JSP內(nèi)置對象【教學(xué)方法】講解【教學(xué)地點】教學(xué)樓、綜合樓【課時安排】4課時【教學(xué)過程】 任務(wù)描述與實現(xiàn) 實現(xiàn)用戶注冊信息獲取及顯示編寫用戶注冊功能,注冊信息包括用戶名、密碼、性別、Email、熟練開發(fā)語言,如圖31所示,提交后,顯示用戶輸入的數(shù)據(jù)。 新知識點——JSP內(nèi)置對象、request JSP內(nèi)置對象概述為了簡化Web頁面的開發(fā)過程,JSP提供了一些由容器實現(xiàn)和管理的對象,這些對象在JSP中可以直接使用,不需要JSP頁面編寫進行實例化,可以直接使用,此類對象稱之為JSP的內(nèi)置對象。其說明見表31。此處略,運行效果如圖36,其提交后顯示會是亂碼,如圖37所示。其主要方法為在獲取程序中設(shè)置字符集,使request其字符集與頁面字符集保持一致。 處理服務(wù)器響應(yīng) 任務(wù)描述與實現(xiàn) 實現(xiàn)四則運算測試功能針對剛學(xué)會整數(shù)四則運算的小學(xué)生,開發(fā)一個測試網(wǎng)站。該對象的方法主要包括處理響應(yīng)頭的相關(guān)屬性的方法、設(shè)定響應(yīng)狀態(tài)碼的方法、重定向方法、設(shè)置響應(yīng)體相關(guān)內(nèi)容和屬性的方法等等。表3 3 response對象的常用方法方法 說明 void setHeader(String name, String value) 為名為name的響應(yīng)頭設(shè)定值為value ??oolean containsHeader(String name) 判斷響應(yīng)對象中是否有名為name的頭void addCookie(Cookie cookie) 將參數(shù)指定的cookie添加到response對象中void sendRedirect(String location) 將頁面重定向到參數(shù)所指定的URL void setContentType(String type) 設(shè)置響應(yīng)的MIME類型PrintWriter getWriter() 得到返回客戶端的打印流 out對象 ,表示一個輸出流,用于向客戶端輸出數(shù)據(jù)。如果頁面沒有緩沖區(qū),那么寫入JspWriter對象的數(shù)據(jù)將直接通過PrintWriter對象進行輸出;如果頁面有緩沖區(qū),則直到緩沖區(qū)滿且如setContentType()等操作都合法時才創(chuàng)建PrintWriter對象,由PrintWrtier對象進行輸出。當(dāng)用戶選擇并點擊“查看按鈕”后,按用戶所選方式展現(xiàn)內(nèi)容。實現(xiàn):當(dāng)用戶在登錄頁面()輸入用戶名和密碼并點擊登錄后,(代碼如程序312所示)中判斷用戶名和密碼是否正確,如果正確,即登錄成功,則將名為“username”,值為用戶所輸入的用戶名的屬性添加到session對象中,(代碼如程序313所示)中;如果用戶名或密碼不正確,則輸出提示“用戶名或密碼不正確,5秒后為您跳轉(zhuǎn)回登錄頁面”,并在5秒后跳轉(zhuǎn)回登錄頁面。 新知識點——session、aplication session session(會話)是用來在訪問一個網(wǎng)站時發(fā)出的多個頁面請求或者在多次頁面跳轉(zhuǎn)之間識別同一個用戶并且存儲這個用戶的相關(guān)信息的一種方式。JSP的內(nèi)置對象session就是這個接口的一個實例。服務(wù)器通常通過cookie或者重寫URL的方式來維持session,不過開發(fā)者無需關(guān)心這些細(xì)節(jié)。 application ,可以通過它和Servlet容器進行通信,如獲取一個文件的MIME類型,轉(zhuǎn)發(fā)請求,寫日志文件等等;也可以通過它共享一些全局信息。因此可以通過將一些信息放在application對象里,以實現(xiàn)全局共享,當(dāng)然要注意這個“全局”只是相對的,因為不同的Java虛擬機上的Servlet上下文也是不同的。實現(xiàn)過程:這樣的功能一般都是基于cookie實現(xiàn)的。當(dāng)用戶成功登錄后,將該username存入cookie中。如果服務(wù)器需要在客戶端記錄某些數(shù)據(jù)時,就可以向客戶端發(fā)送Cookie,客戶端接收并保存該 Cookie,而且客戶端每次訪問該服務(wù)器上的頁面時就會將 Cookie 隨請求數(shù)據(jù)一同發(fā)送給服務(wù)器。 首先需要創(chuàng)建Cookie對象:Cookie c=new Cookie(“cookieName”, “cookieValue”)。 首先獲取客戶端上傳的Cookie數(shù)組:調(diào)用HttpServeltRequest對象的getCookies()得到一個Cookie對象的數(shù)組;然后遍歷該數(shù)組,找尋需要的Cookie對象:通過Cookie的getName()方法,獲取Cookie對象的name屬性,通過getValue()方法獲取Cookie對象的值。對于其它未詳解的對象,可參考相關(guān)的API文檔。Users表的結(jié)構(gòu)如表41所示。JDBC是Java操作數(shù)據(jù)庫的方法,由SUN提供。換言之,有了JDBC API,就不必為訪問MySQL數(shù)據(jù)庫專門寫一個程序,為訪問Oracle數(shù)據(jù)庫又專門寫一個程序。這也是Java語言“編寫一次,處處運行”的優(yōu)勢。在2008年1月16日被Sun公司收購。目前MySQL被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。MySQL的開發(fā)也得到了很多著名廠商和技術(shù)團隊支持。要通過JDBC連接數(shù)據(jù)庫需要使用數(shù)據(jù)庫廠商提供的JDBC Drive。2.(),復(fù)制到當(dāng)前工程的WEBINF的lib目錄中,如圖4圖44所示。(“”).newInstance()。String url=”jdbc:mysql://localhost:3306/hncst”。 (3)建立Statement對象或PreparedStatement對象。Statement 對象用于執(zhí)行不帶參數(shù)的簡單SQL語句;PreparedStatement 對象用于執(zhí)行預(yù)編譯SQL語句;也就是說,Statement接口提供了基本方法,而PreparedStatement接口添加了處理 IN 參數(shù)的方法。(4)執(zhí)行SQL語句。使用哪一個方法由 SQL 語句所產(chǎn)生的內(nèi)容決定。()。 ()。 擴展——JDBC連接SQL Server、Oracle JDBC連接SQL Server SQL Server是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。下邊以SQL Server2005為例,介紹JDBC連接SQL Server數(shù)據(jù)庫。 Server的驗證方式改為混合驗證方式,并設(shè)置合法用戶名和密碼。在此不再詳細(xì)描述。 寫入數(shù)據(jù)庫 任務(wù)描述與實現(xiàn)編寫程序完成用戶注冊功能,即通過JDBC連接數(shù)據(jù)庫,并向users表中添加一條新記錄。 新知識點——Connection、Statement、ResultSet等對象的常用方法在Java語言中提供了豐富的類和接口用于數(shù)據(jù)庫編程,利用它們可以方便地進行數(shù)據(jù)的訪問和處理。在編程中要連接數(shù)據(jù)庫必須要裝載特定的數(shù)據(jù)庫驅(qū)動程序(Driver),格式如下: (“數(shù)據(jù)庫商提供的驅(qū)動程序名稱”); ,即在Java源程序中為:import .*; 在JSP程序中為:% page import=”.*”% 2.DriverManager接口,是JDBC的管理層,作用于用戶和驅(qū)動程序之間,用來管理數(shù)據(jù)庫中的所有驅(qū)動程序。4.Statement接口Statement接口用于在已經(jīng)建立連接的基礎(chǔ)上向數(shù)據(jù)庫發(fā)送SQL語句。在JDBC中有3種Statement對象:Statement、PreparedStatement和 CallableStatement。5.PreparedStatement接口PreparedStatement接口繼承Statement,包含已經(jīng)編譯的SQL語句。因此,將多次執(zhí)行的SQL語句創(chuàng)建為PreparedStatement對象,可以提高效率。ResultSet接口中包含了一系列g(shù)et方法,用來對結(jié)果集中的數(shù)據(jù)進行訪問。服務(wù)器的資源有限,程序如果一直保持?jǐn)?shù)據(jù)庫的連接狀態(tài),就會消耗數(shù)據(jù)庫服務(wù)器的資源,影響服務(wù)器的正常響應(yīng)。但在實際應(yīng)用中,JDBC連接數(shù)據(jù)庫通常會使用servlet(見第五章),而servlet會一直保持在服務(wù)器內(nèi),servlet的數(shù)據(jù)庫連接也會一直保存在服務(wù)器內(nèi),所以為了減少消耗服務(wù)器資源,應(yīng)該習(xí)慣在方法或類中創(chuàng)建數(shù)據(jù)庫連接,并通過close方法主動關(guān)閉數(shù)據(jù)庫連接。分頁的方法有很多種,下面我們介紹一種最簡單最容易理解的:通過前面的學(xué)習(xí),我們可以通過RecordSet對象的方法,獲得記錄集中的記錄條數(shù),已知每頁顯示的記錄個數(shù),可以很容易的計算出分頁的頁數(shù),頁數(shù)等于記錄條數(shù)除以每頁記錄條數(shù),再將結(jié)果向上取整,即頁數(shù)=總記錄條數(shù)/每頁記錄數(shù);當(dāng)前頁顯示的記錄可以通過SQL中Select語句的Limit來限定,已知當(dāng)前頁碼,則顯示記錄的起始位置為(當(dāng)前頁碼1)*每頁記錄數(shù),以MYSQL為例,構(gòu)造出的SQL語句為:Select * from users limit (當(dāng)前頁碼1) *每頁記錄數(shù),每頁記錄數(shù)。SQL Server的SQL語句沒有Limit關(guān)鍵字,如果要對SQL Server中的數(shù)據(jù)表進行分頁就要利用T_SQL中的top和not in語句,top關(guān)鍵字用來指定返回結(jié)果集的前 n 行,很容易理解,第一頁就是select top 每頁記錄數(shù) from users,第二頁select top 2*每頁記錄數(shù) from user,結(jié)果是前兩頁的記錄,然后要將第一頁的記錄從記錄集中剔除,使用not in,即select top 2*每頁記錄數(shù) from users where id not in (select top 每頁記錄數(shù) id from users )?!窘虒W(xué)總結(jié)】本章介紹了應(yīng)用JDBC技術(shù)實現(xiàn)對Mysql、SQLServer、Oracle數(shù)據(jù)庫的連接、數(shù)據(jù)的查詢和更改等操作,并對數(shù)據(jù)查詢的分頁技術(shù)進行了詳細(xì)的講解。本章為了便于學(xué)習(xí),將數(shù)據(jù)庫邏輯直接放置在JSP頁面中,這樣凡要進行數(shù)據(jù)操作的頁面都要加上連接數(shù)據(jù)庫的代碼,不便于維護。如表51所示。為寫成JavaBean,類必須是具體的和公共的,并且具有無參數(shù)的構(gòu)造器。眾所周知,屬性名稱符合這種模式,其他Java 類可以通過自身機制發(fā)現(xiàn)和操作這些JavaBean屬性。編寫一個成功的JavaBean,宗旨是“一次性編寫
點擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1