![J2EE服務(wù)器應(yīng)用開發(fā)講解學(xué)習(xí)_第1頁](http://file4.renrendoc.com/view/2c40e3ab780ffba7ee2966a5a4bab592/2c40e3ab780ffba7ee2966a5a4bab5921.gif)
![J2EE服務(wù)器應(yīng)用開發(fā)講解學(xué)習(xí)_第2頁](http://file4.renrendoc.com/view/2c40e3ab780ffba7ee2966a5a4bab592/2c40e3ab780ffba7ee2966a5a4bab5922.gif)
![J2EE服務(wù)器應(yīng)用開發(fā)講解學(xué)習(xí)_第3頁](http://file4.renrendoc.com/view/2c40e3ab780ffba7ee2966a5a4bab592/2c40e3ab780ffba7ee2966a5a4bab5923.gif)
![J2EE服務(wù)器應(yīng)用開發(fā)講解學(xué)習(xí)_第4頁](http://file4.renrendoc.com/view/2c40e3ab780ffba7ee2966a5a4bab592/2c40e3ab780ffba7ee2966a5a4bab5924.gif)
![J2EE服務(wù)器應(yīng)用開發(fā)講解學(xué)習(xí)_第5頁](http://file4.renrendoc.com/view/2c40e3ab780ffba7ee2966a5a4bab592/2c40e3ab780ffba7ee2966a5a4bab5925.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Good is good, but better carries it.精益求精,善益求善。J2EE服務(wù)器應(yīng)用開發(fā)目錄TOCo1-3hzuHYPERLINKl_Toc150240007第1章Web應(yīng)用入門PAGEREF_Toc150240007h1HYPERLINKl_Toc1502400081.1Web應(yīng)用概述PAGEREF_Toc150240008h2HYPERLINKl_Toc1502400091.1.1Web應(yīng)用程序特點(diǎn)PAGEREF_Toc150240009h2HYPERLINKl_Toc1502400101.1.2HTTP請(qǐng)求PAGEREF_Toc150240010h2HYPERL
2、INKl_Toc1502400111.1.3Web應(yīng)用程序體系結(jié)構(gòu)PAGEREF_Toc150240011h3HYPERLINKl_Toc1502400121.2JavaWeb環(huán)境搭建PAGEREF_Toc150240012h4HYPERLINKl_Toc1502400131.2.1Tomcat的啟動(dòng)PAGEREF_Toc150240013h4HYPERLINKl_Toc1502400141.2.2Web應(yīng)用程序目錄結(jié)構(gòu)PAGEREF_Toc150240014h5HYPERLINKl_Toc1502400151.2.3示例:建立簡(jiǎn)單的Web程序并運(yùn)行PAGEREF_Toc150240015h6
3、HYPERLINKl_Toc1502400161.3Servlet入門PAGEREF_Toc150240016h7HYPERLINKl_Toc1502400171.3.1什么是ServletPAGEREF_Toc150240017h7HYPERLINKl_Toc1502400181.3.2為什么要使用ServletPAGEREF_Toc150240018h8HYPERLINKl_Toc1502400191.3.3編寫Servlet的準(zhǔn)備工作PAGEREF_Toc150240019h9HYPERLINKl_Toc1502400201.3.4運(yùn)行Servlet的前提PAGEREF_Toc15024
4、0020h9HYPERLINKl_Toc1502400211.3.5第一個(gè)ServletPAGEREF_Toc150240021h10HYPERLINKl_Toc1502400221.4簡(jiǎn)單Servlet應(yīng)用PAGEREF_Toc150240022h12HYPERLINKl_Toc1502400231.5本章小結(jié)PAGEREF_Toc150240023h14HYPERLINKl_Toc1502400241.6思考與練習(xí)PAGEREF_Toc150240024h14HYPERLINKl_Toc1502400251.6.1簡(jiǎn)答題PAGEREF_Toc150240025h14HYPERLINKl_T
5、oc1502400261.6.2操作題PAGEREF_Toc150240026h15HYPERLINKl_Toc150240027第2章Servlet基礎(chǔ)PAGEREF_Toc150240027h16HYPERLINKl_Toc1502400282.1Servlet基本結(jié)構(gòu)PAGEREF_Toc150240028h17HYPERLINKl_Toc1502400292.1.1Servlet運(yùn)行原理PAGEREF_Toc150240029h17HYPERLINKl_Toc1502400302.1.2Servlet層次結(jié)構(gòu)PAGEREF_Toc150240030h17HYPERLINKl_Toc15
6、02400312.2Servlet生命周期PAGEREF_Toc150240031h19HYPERLINKl_Toc1502400322.2.1Servlet生命周期的含義PAGEREF_Toc150240032h19HYPERLINKl_Toc1502400332.2.2Servlet生命周期的各方法的使用一PAGEREF_Toc150240033h21HYPERLINKl_Toc1502400342.2.3Servlet生命周期的各方法的使用二PAGEREF_Toc150240034h24HYPERLINKl_Toc1502400352.3ServletRequest對(duì)象PAGEREF_T
7、oc150240035h26HYPERLINKl_Toc1502400362.3.1訪問servlet的方法PAGEREF_Toc150240036h26HYPERLINKl_Toc1502400372.3.2ServletRequest對(duì)象以及參數(shù)傳遞PAGEREF_Toc150240037h27HYPERLINKl_Toc1502400382.4ServletResponse對(duì)象PAGEREF_Toc150240038h32HYPERLINKl_Toc1502400392.5ServletContext對(duì)象PAGEREF_Toc150240039h32HYPERLINKl_Toc15024
8、00402.5.1ServletContext對(duì)象的主要方法PAGEREF_Toc150240040h32HYPERLINKl_Toc1502400412.5.2使用getInitParameter方法讀取web.xml中的參數(shù)PAGEREF_Toc150240041h33HYPERLINKl_Toc1502400422.6ServletConfig對(duì)象PAGEREF_Toc150240042h36HYPERLINKl_Toc1502400432.6.1ServletConfig對(duì)象的主要方法PAGEREF_Toc150240043h36HYPERLINKl_Toc1502400442.6.2
9、使用ServletConfig對(duì)象讀取初始化參數(shù)PAGEREF_Toc150240044h36HYPERLINKl_Toc1502400452.7Servlet應(yīng)用PAGEREF_Toc150240045h39HYPERLINKl_Toc1502400462.7.1使用固定用戶名密碼實(shí)現(xiàn)登陸驗(yàn)證PAGEREF_Toc150240046h39HYPERLINKl_Toc1502400472.7.2通過文件讀取用戶名密碼,驗(yàn)證登錄PAGEREF_Toc150240047h41HYPERLINKl_Toc1502400482.7.3實(shí)現(xiàn)注冊(cè)新用戶的功能,把新用戶的信息寫入文件PAGEREF_Toc1
10、50240048h42HYPERLINKl_Toc1502400492.8本章小結(jié)PAGEREF_Toc150240049h48HYPERLINKl_Toc1502400502.9思考與練習(xí)PAGEREF_Toc150240050h48HYPERLINKl_Toc1502400512.9.1簡(jiǎn)答題PAGEREF_Toc150240051h48HYPERLINKl_Toc1502400522.9.2操作題PAGEREF_Toc150240052h48HYPERLINKl_Toc150240053第3章服務(wù)器應(yīng)用對(duì)象PAGEREF_Toc150240053h49HYPERLINKl_Toc1502
11、400543.1應(yīng)用對(duì)象列表PAGEREF_Toc150240054h50HYPERLINKl_Toc1502400553.2ServletContextServlet上下文PAGEREF_Toc150240055h50HYPERLINKl_Toc1502400563.3Sesssion講解PAGEREF_Toc150240056h53HYPERLINKl_Toc1502400573.3.1使用HttpSession對(duì)象維護(hù)會(huì)話信息PAGEREF_Toc150240057h53HYPERLINKl_Toc1502400583.3.2HttpSession接口的重要方法PAGEREF_Toc15
12、0240058h53HYPERLINKl_Toc1502400593.3.3使用HttpSession實(shí)現(xiàn)私人累加器PAGEREF_Toc150240059h54HYPERLINKl_Toc1502400603.4購物車設(shè)計(jì)PAGEREF_Toc150240060h55HYPERLINKl_Toc1502400613.4.1單版購物車PAGEREF_Toc150240061h55HYPERLINKl_Toc1502400623.4.2網(wǎng)絡(luò)購物車PAGEREF_Toc150240062h58HYPERLINKl_Toc1502400633.5頁面跳轉(zhuǎn)方法PAGEREF_Toc150240063h
13、62HYPERLINKl_Toc1502400643.6Servlet間傳遞參數(shù)方法PAGEREF_Toc150240064h62HYPERLINKl_Toc1502400653.6.1應(yīng)用程序范圍上參數(shù)的傳遞PAGEREF_Toc150240065h63HYPERLINKl_Toc1502400663.6.2會(huì)話范圍上參數(shù)的傳遞PAGEREF_Toc150240066h65HYPERLINKl_Toc1502400673.6.3請(qǐng)求范圍上的參數(shù)的傳遞PAGEREF_Toc150240067h68HYPERLINKl_Toc1502400683.7本章小結(jié)PAGEREF_Toc15024006
14、8h70HYPERLINKl_Toc1502400693.8思考與練習(xí)PAGEREF_Toc150240069h71HYPERLINKl_Toc1502400703.8.1簡(jiǎn)答題PAGEREF_Toc150240070h71HYPERLINKl_Toc1502400713.8.2操作題PAGEREF_Toc150240071h71HYPERLINKl_Toc150240072第4章JSP基礎(chǔ)PAGEREF_Toc150240072h72HYPERLINKl_Toc1502400734.1JSP簡(jiǎn)介PAGEREF_Toc150240073h73HYPERLINKl_Toc1502400744.1
15、.1JSP的概念PAGEREF_Toc150240074h73HYPERLINKl_Toc1502400754.1.2JSP的執(zhí)行過程PAGEREF_Toc150240075h73HYPERLINKl_Toc1502400764.2JSP語法PAGEREF_Toc150240076h74HYPERLINKl_Toc1502400774.2.1腳本元素PAGEREF_Toc150240077h74HYPERLINKl_Toc1502400784.2.2注釋PAGEREF_Toc150240078h78HYPERLINKl_Toc1502400794.2.3轉(zhuǎn)義規(guī)則PAGEREF_Toc15024
16、0079h79HYPERLINKl_Toc1502400804.3指令元素PAGEREF_Toc150240080h79HYPERLINKl_Toc1502400814.3.1page指令PAGEREF_Toc150240081h80HYPERLINKl_Toc1502400824.3.2include指令PAGEREF_Toc150240082h81HYPERLINKl_Toc1502400834.3.3taglib指令PAGEREF_Toc150240083h82HYPERLINKl_Toc1502400844.4標(biāo)準(zhǔn)動(dòng)作PAGEREF_Toc150240084h82HYPERLINKl_
17、Toc1502400854.4.1PAGEREF_Toc150240085h83HYPERLINKl_Toc1502400864.4.2PAGEREF_Toc150240086h83HYPERLINKl_Toc1502400874.4.3PAGEREF_Toc150240087h83HYPERLINKl_Toc1502400884.4.4標(biāo)準(zhǔn)動(dòng)作的簡(jiǎn)單使用PAGEREF_Toc150240088h83HYPERLINKl_Toc1502400894.5JSP中的隱含對(duì)象PAGEREF_Toc150240089h84HYPERLINKl_Toc1502400904.5.1request對(duì)象PAG
18、EREF_Toc150240090h85HYPERLINKl_Toc1502400914.5.2response對(duì)象PAGEREF_Toc150240091h88HYPERLINKl_Toc1502400924.5.3out對(duì)象PAGEREF_Toc150240092h88HYPERLINKl_Toc1502400934.5.4session對(duì)象PAGEREF_Toc150240093h88HYPERLINKl_Toc1502400944.5.5application對(duì)象PAGEREF_Toc150240094h89HYPERLINKl_Toc1502400954.5.6pageContext
19、對(duì)象PAGEREF_Toc150240095h89HYPERLINKl_Toc1502400964.5.7page對(duì)象PAGEREF_Toc150240096h89HYPERLINKl_Toc1502400974.5.8config對(duì)象PAGEREF_Toc150240097h89HYPERLINKl_Toc1502400984.5.9exception對(duì)象PAGEREF_Toc150240098h90HYPERLINKl_Toc1502400994.6JSP范圍PAGEREF_Toc150240099h90HYPERLINKl_Toc1502401004.6.1JSP范圍PagePAGERE
20、F_Toc150240100h90HYPERLINKl_Toc1502401014.6.2JSP范圍RequestPAGEREF_Toc150240101h90HYPERLINKl_Toc1502401024.6.3JSP范圍SessionPAGEREF_Toc150240102h91HYPERLINKl_Toc1502401034.6.4JSP范圍ApplicationPAGEREF_Toc150240103h91HYPERLINKl_Toc1502401044.7本章小結(jié)PAGEREF_Toc150240104h91HYPERLINKl_Toc1502401054.8思考與練習(xí)PAGERE
21、F_Toc150240105h91HYPERLINKl_Toc1502401064.8.1簡(jiǎn)答題PAGEREF_Toc150240106h91HYPERLINKl_Toc1502401074.8.2操作題PAGEREF_Toc150240107h92HYPERLINKl_Toc150240108第5章JavaBean組件技術(shù)PAGEREF_Toc150240108h93HYPERLINKl_Toc1502401095.1JavaBean的概念PAGEREF_Toc150240109h94HYPERLINKl_Toc1502401105.1.1JavaBean簡(jiǎn)介PAGEREF_Toc15024
22、0110h94HYPERLINKl_Toc1502401115.1.2JavaBean的屬性PAGEREF_Toc150240111h94HYPERLINKl_Toc1502401125.2JavaBean使用PAGEREF_Toc150240112h95HYPERLINKl_Toc1502401135.2.1標(biāo)準(zhǔn)動(dòng)作PAGEREF_Toc150240113h95HYPERLINKl_Toc1502401145.2.2標(biāo)準(zhǔn)動(dòng)作PAGEREF_Toc150240114h96HYPERLINKl_Toc1502401155.2.3標(biāo)準(zhǔn)動(dòng)作PAGEREF_Toc150240115h97HYPERLI
23、NKl_Toc1502401165.2.4JavaBean的Scope屬性PAGEREF_Toc150240116h97HYPERLINKl_Toc1502401175.2.5JavaBean的簡(jiǎn)單應(yīng)用PAGEREF_Toc150240117h97HYPERLINKl_Toc1502401185.3JavaBean應(yīng)用實(shí)例PAGEREF_Toc150240118h100HYPERLINKl_Toc1502401195.3.1編制商品展示頁面home.htmlPAGEREF_Toc150240119h100HYPERLINKl_Toc1502401205.3.2編寫一個(gè)購物車JavaBeanCa
24、rtBean.javaPAGEREF_Toc150240120h101HYPERLINKl_Toc1502401215.3.3編制購物車JSP頁面cart.jspPAGEREF_Toc150240121h103HYPERLINKl_Toc1502401225.4Web應(yīng)用中訪問數(shù)據(jù)庫PAGEREF_Toc150240122h104HYPERLINKl_Toc1502401235.4.1數(shù)據(jù)庫訪問類PAGEREF_Toc150240123h104HYPERLINKl_Toc1502401245.4.2Web應(yīng)用(多Servlet)PAGEREF_Toc150240124h107HYPERLINK
25、l_Toc1502401255.4.3Web應(yīng)用(單Servlet)PAGEREF_Toc150240125h114HYPERLINKl_Toc1502401265.5JSP/Servlet如何傳遞參數(shù)PAGEREF_Toc150240126h116HYPERLINKl_Toc1502401275.6本章小結(jié)PAGEREF_Toc150240127h118HYPERLINKl_Toc1502401285.7思考與練習(xí)PAGEREF_Toc150240128h118HYPERLINKl_Toc1502401295.7.1簡(jiǎn)答題PAGEREF_Toc150240129h118HYPERLINKl_
26、Toc1502401305.7.2操作題PAGEREF_Toc150240130h119HYPERLINKl_Toc150240131第6章使用JSTL標(biāo)簽庫PAGEREF_Toc150240131h120HYPERLINKl_Toc1502401326.1JSP定制標(biāo)簽PAGEREF_Toc150240132h121HYPERLINKl_Toc1502401336.1.1什么是JSP定制標(biāo)簽PAGEREF_Toc150240133h121HYPERLINKl_Toc1502401346.1.2如何使用JSP定制標(biāo)簽庫PAGEREF_Toc150240134h122HYPERLINKl_Toc
27、1502401356.1.3第三方JSP定制標(biāo)簽庫PAGEREF_Toc150240135h123HYPERLINKl_Toc1502401366.2JSTL1.0PAGEREF_Toc150240136h124HYPERLINKl_Toc1502401376.2.1安裝使用JSTL1.0PAGEREF_Toc150240137h124HYPERLINKl_Toc1502401386.2.2使用JSTL1.0的簡(jiǎn)單例子PAGEREF_Toc150240138h125HYPERLINKl_Toc1502401396.3表達(dá)式語言(EL)PAGEREF_Toc150240139h125HYPERL
28、INKl_Toc1502401406.3.1表達(dá)式語言語法PAGEREF_Toc150240140h126HYPERLINKl_Toc1502401416.3.2表達(dá)式語言隱含對(duì)象PAGEREF_Toc150240141h127HYPERLINKl_Toc1502401426.3.3表達(dá)式語言運(yùn)算符PAGEREF_Toc150240142h132HYPERLINKl_Toc1502401436.4核心標(biāo)簽庫PAGEREF_Toc150240143h135HYPERLINKl_Toc1502401446.4.1表達(dá)式操作PAGEREF_Toc150240144h136HYPERLINKl_Toc
29、1502401456.4.2迭代操作PAGEREF_Toc150240145h141HYPERLINKl_Toc1502401466.4.3流程控制PAGEREF_Toc150240146h147HYPERLINKl_Toc1502401476.4.4URL操作PAGEREF_Toc150240147h149HYPERLINKl_Toc1502401486.5本章小結(jié)PAGEREF_Toc150240148h151HYPERLINKl_Toc1502401496.6思考與練習(xí)PAGEREF_Toc150240149h152HYPERLINKl_Toc1502401506.6.1簡(jiǎn)答題PAGER
30、EF_Toc150240150h152HYPERLINKl_Toc1502401516.6.2操作題PAGEREF_Toc150240151h152HYPERLINKl_Toc150240152第7章Servlet高級(jí)應(yīng)用PAGEREF_Toc150240152h153HYPERLINKl_Toc1502401537.1ServletContext對(duì)象PAGEREF_Toc150240153h154HYPERLINKl_Toc1502401547.1.1Web應(yīng)用程序的初始參數(shù)PAGEREF_Toc150240154h154HYPERLINKl_Toc1502401557.1.2Servlet
31、Context對(duì)象的方法和屬性PAGEREF_Toc150240155h156HYPERLINKl_Toc1502401567.2與ServletContext對(duì)象相關(guān)的偵聽器和事件PAGEREF_Toc150240156h158HYPERLINKl_Toc1502401577.2.1ServletContext生命周期PAGEREF_Toc150240157h158HYPERLINKl_Toc1502401587.2.2ServletContextListener偵聽器PAGEREF_Toc150240158h159HYPERLINKl_Toc1502401597.2.3ServletCon
32、textAttributeListener偵聽器PAGEREF_Toc150240159h162HYPERLINKl_Toc1502401607.3與HttpSession對(duì)象相關(guān)的偵聽器和事件PAGEREF_Toc150240160h163HYPERLINKl_Toc1502401617.3.1HttpSessionListener偵聽器PAGEREF_Toc150240161h163HYPERLINKl_Toc1502401627.3.2利用偵聽器完成在線人數(shù)統(tǒng)計(jì)工作的示例PAGEREF_Toc150240162h164HYPERLINKl_Toc1502401637.3.3HttpSes
33、sionAttributeListener偵聽器PAGEREF_Toc150240163h166HYPERLINKl_Toc1502401647.4過濾器PAGEREF_Toc150240164h166HYPERLINKl_Toc1502401657.4.1過濾器的概念PAGEREF_Toc150240165h166HYPERLINKl_Toc1502401667.4.2應(yīng)用過濾器PAGEREF_Toc150240166h168HYPERLINKl_Toc1502401677.5本章小結(jié)PAGEREF_Toc150240167h173HYPERLINKl_Toc1502401687.6思考與練
34、習(xí)PAGEREF_Toc150240168h173HYPERLINKl_Toc1502401697.6.1簡(jiǎn)答題PAGEREF_Toc150240169h173HYPERLINKl_Toc1502401707.6.2操作題PAGEREF_Toc150240170h173HYPERLINKl_Toc150240171第8章Java的模板設(shè)計(jì)PAGEREF_Toc150240171h174HYPERLINKl_Toc1502401728.1Velocity模板PAGEREF_Toc150240172h175HYPERLINKl_Toc1502401738.1.1Velocity的簡(jiǎn)單使用PAGER
35、EF_Toc150240173h175HYPERLINKl_Toc1502401748.1.2Set語句和條件語句PAGEREF_Toc150240174h178HYPERLINKl_Toc1502401758.1.3邏輯運(yùn)算符PAGEREF_Toc150240175h181HYPERLINKl_Toc1502401768.1.4循環(huán)語句Foreach循環(huán)PAGEREF_Toc150240176h182HYPERLINKl_Toc1502401778.1.5Parse和StopPAGEREF_Toc150240177h183HYPERLINKl_Toc1502401788.1.6Velocim
36、acrosVelocity宏P(guān)AGEREF_Toc150240178h184HYPERLINKl_Toc1502401798.2Veclocity在Servlet中應(yīng)用PAGEREF_Toc150240179h185HYPERLINKl_Toc1502401808.3JSP中的模板使用PAGEREF_Toc150240180h188HYPERLINKl_Toc1502401818.3.1運(yùn)用模板思想的簡(jiǎn)單JSPPAGEREF_Toc150240181h188HYPERLINKl_Toc1502401828.4本章小結(jié)PAGEREF_Toc150240182h190HYPERLINKl_Toc1
37、502401838.5思考與練習(xí)PAGEREF_Toc150240183h190HYPERLINKl_Toc1502401848.5.1簡(jiǎn)答題PAGEREF_Toc150240184h190HYPERLINKl_Toc1502401858.5.2操作題PAGEREF_Toc150240185h191HYPERLINKl_Toc150240186第9章Web開發(fā)與模式應(yīng)用PAGEREF_Toc150240186h192HYPERLINKl_Toc1502401879.1MVC模式PAGEREF_Toc150240187h193HYPERLINKl_Toc1502401889.1.1MVC概念PA
38、GEREF_Toc150240188h193HYPERLINKl_Toc1502401899.1.2應(yīng)用PAGEREF_Toc150240189h193HYPERLINKl_Toc1502401909.2命令模式PAGEREF_Toc150240190h195HYPERLINKl_Toc1502401919.2.1簡(jiǎn)單應(yīng)用PAGEREF_Toc150240191h196HYPERLINKl_Toc1502401929.2.2Web中的應(yīng)用PAGEREF_Toc150240192h199HYPERLINKl_Toc1502401939.3策略模式PAGEREF_Toc150240193h201H
39、YPERLINKl_Toc1502401949.3.1基礎(chǔ)應(yīng)用PAGEREF_Toc150240194h202HYPERLINKl_Toc1502401959.3.2Web中的應(yīng)用PAGEREF_Toc150240195h205HYPERLINKl_Toc1502401969.4本章小結(jié)PAGEREF_Toc150240196h209HYPERLINKl_Toc1502401979.5思考與練習(xí)PAGEREF_Toc150240197h209HYPERLINKl_Toc1502401989.5.1簡(jiǎn)答題PAGEREF_Toc150240198h209HYPERLINKl_Toc15024019
40、99.5.2操作題PAGEREF_Toc150240199h209HYPERLINKl_Toc150240200第10章技術(shù)解決方案PAGEREF_Toc150240200h210HYPERLINKl_To1JavaMailPAGEREF_Toc150240201h211HYPERLINKl_To1.1JavaMailAPIPAGEREF_Toc150240202h211HYPERLINKl_To1.2JavaMail的使用步驟及簡(jiǎn)單應(yīng)用PAGEREF_Toc150240203h214HYPERLINKl_Toc15
41、024020410.1.3JavaMail的Web應(yīng)用PAGEREF_Toc150240204h216HYPERLINKl_To2文件上傳PAGEREF_Toc150240205h220HYPERLINKl_To2.1簡(jiǎn)單上傳PAGEREF_Toc150240206h221HYPERLINKl_To2.2圖片上傳PAGEREF_Toc150240207h224HYPERLINKl_To3動(dòng)態(tài)圖片的創(chuàng)建PAGEREF_Toc150240208h226HYPERLINKl_Toc15024020
42、910.4網(wǎng)絡(luò)投票系統(tǒng)的實(shí)現(xiàn)PAGEREF_Toc150240209h230HYPERLINKl_To5本章小結(jié)PAGEREF_Toc150240210h235HYPERLINKl_To6思考與練習(xí)PAGEREF_Toc150240211h235HYPERLINKl_To6.1簡(jiǎn)答題PAGEREF_Toc150240212h235HYPERLINKl_To6.2操作題PAGEREF_Toc150240213h235HYPERLINKl_Toc150240214第11章自定義標(biāo)簽PAGEREF
43、_Toc150240214h236HYPERLINKl_To1自定義標(biāo)簽簡(jiǎn)介PAGEREF_Toc150240215h237HYPERLINKl_To2自定義標(biāo)簽的結(jié)構(gòu)PAGEREF_Toc150240216h237HYPERLINKl_To2.1自定義標(biāo)簽的表現(xiàn)形式PAGEREF_Toc150240217h237HYPERLINKl_To2.2Tag接口PAGEREF_Toc150240218h238HYPERLINKl_To3制作一個(gè)簡(jiǎn)單的自定義標(biāo)簽PAGERE
44、F_Toc150240219h240HYPERLINKl_To3.1編寫標(biāo)簽處理器PAGEREF_Toc150240220h240HYPERLINKl_To3.2編寫標(biāo)簽庫描述文件PAGEREF_Toc150240221h241HYPERLINKl_To3.3部署標(biāo)簽庫PAGEREF_Toc150240222h243HYPERLINKl_To3.4在JSP頁面中使用標(biāo)簽PAGEREF_Toc150240223h244HYPERLINKl_To4給標(biāo)簽加屬性PAGER
45、EF_Toc150240224h245HYPERLINKl_To4.1如何在標(biāo)簽處理器內(nèi)處理標(biāo)簽屬性PAGEREF_Toc150240225h245HYPERLINKl_To4.2在TLD文件中聲明屬性PAGEREF_Toc150240226h245HYPERLINKl_To4.3制作帶有屬性的myFont標(biāo)簽PAGEREF_Toc150240227h246HYPERLINKl_To5標(biāo)簽向JSP傳遞信息PAGEREF_Toc150240228h249HYPERLINKl_Toc150240
46、22911.6本章小結(jié)PAGEREF_Toc150240229h253HYPERLINKl_To7思考與練習(xí)PAGEREF_Toc150240230h253HYPERLINKl_To7.1簡(jiǎn)答題PAGEREF_Toc150240231h253HYPERLINKl_To7.2操作題PAGEREF_Toc150240232h253Web應(yīng)用入門本章重點(diǎn)了解Web應(yīng)用程序的特點(diǎn)掌握Web環(huán)境的搭建以及Tomcat的使用掌握典型Web應(yīng)用程序的目錄結(jié)構(gòu)掌握如何創(chuàng)建和使用簡(jiǎn)單的ServletWeb應(yīng)用概述Web應(yīng)用程序特點(diǎn)We
47、b應(yīng)用程序基于B/S結(jié)構(gòu),和一般的C/S的應(yīng)用程序不同。以聽音樂為例,在使用C/S結(jié)構(gòu)的應(yīng)用程序時(shí),如媒體播放器,用戶輸入命令,如選擇文件,媒體播放器就會(huì)播放出該文件。隨著技術(shù)的發(fā)展,如今更多的用戶喜歡在Internet上聽音樂。這將使用戶節(jié)約大量的磁盤空間。很多的網(wǎng)站都提供各種音樂,只要用戶選擇一個(gè)或多個(gè)音樂文件,網(wǎng)站就會(huì)播放選中的文件。此時(shí),用戶點(diǎn)播音樂的請(qǐng)求被Internet網(wǎng)絡(luò)傳輸給網(wǎng)站的Web服務(wù)器上的Web應(yīng)用程序,該Web應(yīng)用程序響應(yīng)用戶的請(qǐng)求,給用戶播放選中的文件。在這種B/S結(jié)構(gòu)下,用戶訪問某網(wǎng)站時(shí)實(shí)際上是訪問該網(wǎng)站的Web服務(wù)器。在Java中使用Servlet和JSP技術(shù)可
48、以開發(fā)Web應(yīng)用程序。與桌面應(yīng)用程序相比,Web應(yīng)用程序具有以下優(yōu)點(diǎn):訪問Web應(yīng)用程序更容易用于訪問Web網(wǎng)頁的標(biāo)準(zhǔn)協(xié)議為HTTP協(xié)議,為絕大多數(shù)操作系統(tǒng)所支持。此外,所要求的客戶端軟件僅為瀏覽器,如MicrosoftInternetExplorer等。維護(hù)和部署成本低Web應(yīng)用程序在瀏覽器中請(qǐng)求運(yùn)行,不需要在每個(gè)客戶端系統(tǒng)上安裝客戶端軟件。Web應(yīng)用程序代碼可以在服務(wù)器端進(jìn)行修改和維護(hù),這將節(jié)省更新和部署應(yīng)用程序所需的時(shí)間和成本。HTTP請(qǐng)求通常,用戶的請(qǐng)求和Web應(yīng)用程序的響應(yīng)需要通過Internet從一臺(tái)計(jì)算機(jī)發(fā)送到另一臺(tái)計(jì)算機(jī)或服務(wù)器,使用的是超文本傳輸協(xié)議(HTTP)。HTTP客戶
49、端(如瀏覽器)需要與服務(wù)器建立一個(gè)連接,并將一則請(qǐng)求消息通過連接發(fā)送到HTTP服務(wù)器,以請(qǐng)求相應(yīng)的資源。然后服務(wù)器返回帶有請(qǐng)求資源的相應(yīng)消息。一旦回答了請(qǐng)求,服務(wù)器則關(guān)閉連接,這樣便沒有存儲(chǔ)連接信息,所以HTTP被稱為無狀態(tài)協(xié)議。HTTP請(qǐng)求消息使用GET或POST方法以便在Web上傳輸請(qǐng)求。檢索信息時(shí)使用GET方法,如檢索文檔、圖表或數(shù)據(jù)庫查詢結(jié)果。要檢索的信息作為字符參數(shù)傳遞,稱為查詢字符串。因此,傳遞的數(shù)據(jù)對(duì)客戶端是可見的。根據(jù)不同的服務(wù)器,查詢字符串的長(zhǎng)度限制在240255個(gè)字符。例如,要使用GET方法在網(wǎng)站中查詢name為a的用戶信息,那么查詢字符串的表示為:/user?name=a
50、HTTP定義的另一種請(qǐng)求方法是POST方法。使用POST發(fā)送的數(shù)據(jù)對(duì)客戶端是不可見的,且對(duì)發(fā)送的數(shù)據(jù)的量沒有限制。POST方法多用來傳輸敏感數(shù)據(jù),如信用卡號(hào)或用戶的密碼等。Web應(yīng)用程序體系結(jié)構(gòu)大多數(shù)的應(yīng)用程序由以下3個(gè)組件組成。表示層:由用戶界面和用于生成界面的代碼組成。業(yè)務(wù)層:包含系統(tǒng)的業(yè)務(wù)和功能代碼。數(shù)據(jù)存取層:負(fù)責(zé)完成存取數(shù)據(jù)庫的數(shù)據(jù)。應(yīng)用程序的體系結(jié)構(gòu)定義如何將這些組件組合在一起并交互完成軟件的功能。以下是3種應(yīng)用程序體系結(jié)構(gòu)。一層體系結(jié)構(gòu)這種體系結(jié)構(gòu)中,所有與表示邏輯、業(yè)務(wù)邏輯和數(shù)據(jù)存取邏輯相關(guān)的代碼都耦合在一起。二層體系結(jié)構(gòu)在這種體系結(jié)構(gòu)中,數(shù)據(jù)存取邏輯的代碼與業(yè)務(wù)邏輯和表示邏輯
51、分開,而且任何與數(shù)據(jù)存取層的交互都將通過業(yè)務(wù)層來完成,但表示邏輯和業(yè)務(wù)邏輯的代碼仍然耦合在一起。三層體系結(jié)構(gòu)在這種體系結(jié)構(gòu)中,與3個(gè)組件相關(guān)的代碼相互之間保持獨(dú)立。但是,現(xiàn)在是業(yè)務(wù)層充當(dāng)數(shù)據(jù)存取層和表示層之間的接口,通常表示層不能與數(shù)據(jù)存取層進(jìn)行通信。設(shè)計(jì)良好的Web應(yīng)用程序通常是基于三層體系結(jié)構(gòu)的。這種體系結(jié)構(gòu)帶來的優(yōu)點(diǎn)有:大大的降低了各個(gè)組件之間的耦合性,即一個(gè)組件的更改不會(huì)影響其他兩個(gè)組件。例如,如果用戶需要更換數(shù)據(jù)庫,那么只有數(shù)據(jù)存取邏輯組件需要修改代碼。同樣,如果更改了用戶界面設(shè)計(jì),那么只有表示邏輯組件需要修改。由于表示邏輯和數(shù)據(jù)存取邏輯相互獨(dú)立,因而可以方便地?cái)U(kuò)充表示邏輯,使系統(tǒng)具
52、有良好的可擴(kuò)展性。代碼重復(fù)最少,因?yàn)樵?個(gè)組件之間盡可能共享代碼。良好的分工與協(xié)作。這將使不同的小組能夠獨(dú)立的開發(fā)應(yīng)用程序的不同部分,并充分發(fā)揮各自的長(zhǎng)處和優(yōu)勢(shì)。應(yīng)用于Web應(yīng)用程序的三層體系結(jié)構(gòu),表示層(通常為HTML或JSP頁面)由在客戶端系統(tǒng)顯示用戶接口的代碼組成。業(yè)務(wù)層中相應(yīng)的Servlet或JSP組件處理了用戶的請(qǐng)求后,將進(jìn)一步與數(shù)據(jù)存取層交互,數(shù)據(jù)存取層進(jìn)行數(shù)據(jù)庫的相應(yīng)操作。JavaWeb環(huán)境搭建Tomcat的啟動(dòng)安裝好Tomcat后,點(diǎn)擊開始運(yùn)行進(jìn)入到命令行界面(如圖1-1)。圖1-1命令行界面然后進(jìn)入到Tomcat下的bin目錄下(如圖1-2)。圖1-2命令行界面使用start
53、up命令啟動(dòng)Tomcat服務(wù)(如圖1-3、圖1-4)。圖1-3啟動(dòng)Tomcat圖1-4啟動(dòng)成功Web應(yīng)用程序目錄結(jié)構(gòu)圖1-5Tomcat目錄結(jié)構(gòu)其中webapps用于發(fā)布程序集,Web應(yīng)用程序就存儲(chǔ)在該文件夾中,如圖1-6,就是一個(gè)簡(jiǎn)單的Web應(yīng)用程序的目錄結(jié)構(gòu)。圖1-6目錄結(jié)構(gòu)Web應(yīng)用程序有一個(gè)頂層目錄,用來標(biāo)識(shí)Web應(yīng)用程序。例如,如果頂層目錄的名稱為“book”,則此Web應(yīng)用程序可以用http:/localhost:8080/book/來訪問。該頂層目錄結(jié)構(gòu)成為文檔根目錄,有以下幾部分組成。靜態(tài)文件:包括所有的HTML網(wǎng)頁和圖像文件等。JSP頁面文件:利用JSP頁面技術(shù)可以很方便地在
54、頁面中生成動(dòng)態(tài)的內(nèi)容。WEB-INF:該目錄存在于Web應(yīng)用程序根目錄下。主要有以下部分組成:classes目錄:存儲(chǔ)Servlet類、JavaBean類和Web應(yīng)用程序需要的其他類。lib目錄:包含Web應(yīng)用程序所需的各種.jar文件。web.xml文件:Web應(yīng)用程序的部署描述文件,該文件包含有關(guān)的Web應(yīng)用程序的元數(shù)據(jù)信息。根元素為。示例:建立簡(jiǎn)單的Web程序并運(yùn)行步驟一:在Tomcat下的webapps目錄下建立Web應(yīng)用程序主目錄book。步驟二:在book目錄下建立WEB-INF目錄和簡(jiǎn)單的HTML文件。代碼如1-1。代碼1-1主頁文件book.htmlHelloHelloWorl
55、d!步驟三:在WEB-INF目錄下建立classes目錄和lib目錄以及web.xml文件。在web.xml文件中寫入根元素,見代碼1-2。代碼1-2配置文件web.xml步驟四:?jiǎn)?dòng)Tomcat服務(wù)步驟五:通過http:/localhost:8080/book/book.html進(jìn)行訪問,結(jié)果如圖1-7:圖1-7運(yùn)行結(jié)果Servlet入門什么是Servletservlet可以被認(rèn)為是服務(wù)器端的applet。servlet被Web服務(wù)器加載和執(zhí)行,就如同applet被瀏覽器加載和執(zhí)行一樣。servlet從客戶端(通過Web服務(wù)器)接收請(qǐng)求,執(zhí)行某種作業(yè),然后返回結(jié)果。使用servlet的基本流
56、程如下:客戶端(如Web瀏覽器)通過HTTP提出請(qǐng)求。Web服務(wù)器接收該請(qǐng)求并將其發(fā)給servlet。如果這個(gè)servlet尚未被加載Web服務(wù)器將把它加載到Java虛擬機(jī)并且執(zhí)行它。servlet將接收該HTTP請(qǐng)求并執(zhí)行某種處理。servlet將向Web服務(wù)器返回應(yīng)答。Web服務(wù)器將從servlet收到的應(yīng)答發(fā)送給客戶端。由于servlet是在服務(wù)器上執(zhí)行,通常與applet相關(guān)的安全性的問題并不需實(shí)現(xiàn)。servlet使相當(dāng)數(shù)量的不可能或者至少是很難由applet實(shí)現(xiàn)的功能的實(shí)現(xiàn)成為可能。與現(xiàn)有系統(tǒng)通過CORBA,RMI,socket和本地(native)調(diào)用的通信就是其中的一些例子。另外
57、,一定要注意:Web瀏覽器并不直接和servlet通信,servlet是由Web服務(wù)器加載和執(zhí)行的。這意味著如果Web服務(wù)器有防火墻保護(hù),那么servlet也將得到防火墻的保護(hù)。為什么要使用Servletservlet可以很好地替代公共網(wǎng)關(guān)接口(CommonGatewayInterface,CGI)腳本。通常CGI腳本是用Perl或者C語言編寫的,它們總是和特定的服務(wù)器平臺(tái)緊密相關(guān)。而servlet是用Java編寫的,所以它們一開始就是平臺(tái)無關(guān)的。這樣,Java編寫一次就可以在任何平臺(tái)運(yùn)行(writeonce,runanywhere)的承諾就同樣可以在服務(wù)器上實(shí)現(xiàn)了。servlet還有一些CG
58、I腳本所不具備的獨(dú)特優(yōu)點(diǎn):servlet是持久的servlet只需Web服務(wù)器加載一次,而且可以在不同請(qǐng)求之間保持服務(wù)(例如一次數(shù)據(jù)庫連接)。與之相反,CGI腳本是短暫的、瞬態(tài)的。每一次對(duì)CGI腳本的請(qǐng)求,都會(huì)使Web服務(wù)器加載并執(zhí)行該腳本。一旦這個(gè)CGI腳本運(yùn)行結(jié)束,它就會(huì)被從內(nèi)存中清除,然后將結(jié)果返回到客戶端。CGI腳本的每一次使用,都會(huì)造成程序初始化過程(例如連接數(shù)據(jù)庫)的重復(fù)執(zhí)行。servlet是與平臺(tái)無關(guān)的如前所述,servlet是用Java編寫的,它自然也繼承了Java的平臺(tái)無關(guān)性。servlet是可擴(kuò)展的由于servlet是用Java編寫的,它就具備了Java所能帶來的所有優(yōu)點(diǎn)。
59、Java是健壯的、面向?qū)ο蟮木幊陶Z言,很容易擴(kuò)展以適應(yīng)需求。servlet自然也具備了這些特征。servlet是安全的。從外界調(diào)用一個(gè)servlet的惟一方法就是通過Web服務(wù)器。這提供了高水平的安全性保障,尤其是在Web服務(wù)器有防火墻保護(hù)的時(shí)候。servlet可以在多種多樣的客戶機(jī)上使用。由于servlet是用Java編寫的,所以可以很方便地在HTML中使用它們。編寫Servlet的準(zhǔn)備工作JavaSoft(SunMicrosystem的Java軟件部)盡量地使servlet開發(fā)能夠既方便又快捷。JavaServlets開發(fā)工具包(JSDK)就是他們努力的結(jié)晶。該軟件可以從JavaSoft的
60、主頁()上下載。從1.2版以后,JSDK已經(jīng)成為Java開發(fā)工具包(JDK)的組成部分。在JSDK中包含了JavaServletAPI,JavaServletAPI是標(biāo)準(zhǔn)的Java擴(kuò)展API。這意味著,JSDK不是Java核心框架的組成部分,因而可以由提供商將其作為附加包來提供。Java核心框架是所有使用Java的產(chǎn)品所必須包含的。在Javax.servlet包中提供了ServletAPI。運(yùn)行Servlet的前提如前所述,運(yùn)行servlet的全部需求就是一個(gè)支持ServletAPI的Web服務(wù)器。表1-1和1-2給出了第三方廠商提供的JavaWeb服務(wù)器的實(shí)現(xiàn)以及支持ServletAPI的附
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年公共衛(wèi)生檢測(cè)合作協(xié)議
- 2025年店面資產(chǎn)抵押合同協(xié)議
- 2025年企業(yè)項(xiàng)目轉(zhuǎn)讓中介合同模板
- 2025年單元式幕墻設(shè)計(jì)與施工合同模板
- 2025年住宅建筑工程合同協(xié)議書范例
- 2025年醫(yī)療設(shè)備維修服務(wù)合同協(xié)議書范本
- 2025年通信運(yùn)營(yíng)商策劃策略與業(yè)務(wù)增長(zhǎng)合作協(xié)議書
- 2025年企業(yè)集團(tuán)統(tǒng)一采購生產(chǎn)設(shè)備的策劃協(xié)議
- 2025年房屋貸款償還策劃協(xié)議
- 2025年信用保證協(xié)議示例
- 手術(shù)室醫(yī)院感染控制規(guī)范
- 鑄牢中華民族共同體意識(shí)主題班會(huì)教案
- 運(yùn)營(yíng)與管理行業(yè)培訓(xùn)資料
- 48貴州省貴陽市2023-2024學(xué)年五年級(jí)上學(xué)期期末數(shù)學(xué)試卷
- 騎手食品安全培訓(xùn)
- 第十六章二次根式單元復(fù)習(xí)題-2023-2024學(xué)年人教版八年級(jí)數(shù)學(xué)下冊(cè)
- 2023-2024新版北師大七年級(jí)數(shù)學(xué)下冊(cè)全冊(cè)教案
- 新人教版五年級(jí)小學(xué)數(shù)學(xué)全冊(cè)奧數(shù)(含答案)
- 風(fēng)電場(chǎng)升壓站培訓(xùn)課件
- 2024年光大環(huán)保(中國(guó))有限公司招聘筆試參考題庫含答案解析
- 50個(gè)工具玩轉(zhuǎn)項(xiàng)目式學(xué)習(xí)
評(píng)論
0/150
提交評(píng)論