版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、JSP基礎(chǔ),第一節(jié)Tomcat安裝目錄,Tomcat|---bin Tomcat:存放啟動(dòng)和關(guān)閉tomcat腳本;|---conf Tomcat:存放不同的配置文件(server.xml和web.xml); |---doc:存放Tomcat文檔; |---lib/japser/common:存放Tomcat運(yùn)行需要的庫文件(JARS); |---logs:存放Tomcat執(zhí)行時(shí)的LOG文件; |---src:存放Tomcat
2、的源代碼; |---webapps:Tomcat的主要Web發(fā)布目錄(包括應(yīng)用程序示例); |---work:存放jsp編譯后產(chǎn)生的class文件;,第二節(jié)jsp指令標(biāo)簽(編譯指令),page:該指令是針對(duì)當(dāng)前頁面的指令。include:用于指定包含另一個(gè)頁面。taglib:用于定義和訪問自定義標(biāo)簽。使用編譯指令的語法格式如下:,1.Page標(biāo)簽,,Page屬性說明,1)language:聲明當(dāng)前JSP頁面使用的腳本語言的種
3、類,因?yàn)轫撁媸荍SP頁面,該屬性的值通常都是java,該屬性的默認(rèn)值也是java,所以通常無須設(shè)置。2)extends:指定JSP頁面編譯所產(chǎn)生的Java類所繼承的父類,或所實(shí)現(xiàn)的接口。3)import:用來導(dǎo)入包。下面幾個(gè)包是默認(rèn)自動(dòng)導(dǎo)入的,不需要顯式導(dǎo)入。默認(rèn)導(dǎo)入的包有:java.lang.*、javax.servlet.*、javax.servlet.jsp.*、javax.servlet.http.*。4)session:
4、設(shè)定這個(gè)JSP頁面是否需要HTTP Session。,5) buffer:指定輸出緩沖區(qū)的大小。輸出緩沖區(qū)的JSP內(nèi)部對(duì)象:out用于緩存JSP頁面對(duì)客戶瀏覽器的輸出,默認(rèn)值為8kb,可以設(shè)置為none,也可以設(shè)置為其他的值,單位為kb。6)autoFlush:當(dāng)輸出緩沖區(qū)即將溢出時(shí),是否需要強(qiáng)制輸出緩沖區(qū)的內(nèi)容。設(shè)置為true時(shí)為正常輸出;如果設(shè)置為false,則會(huì)在buffer溢出時(shí)產(chǎn)生一個(gè)異常。7)errorPage:指定錯(cuò)誤
5、處理頁面。如果本頁面產(chǎn)生了異常或者錯(cuò)誤,而該JSP頁面沒有對(duì)應(yīng)的處理代碼,則會(huì)自動(dòng)調(diào)用該指令所指定的JSP頁面。因?yàn)镴SP內(nèi)建了異常機(jī)制支持,所以JSP可以不處理異常。8)isErrorPage:設(shè)置本JSP頁面是否為錯(cuò)誤處理程序。如果該頁面本身已是錯(cuò)誤處理頁面,則通常無須指定errorPage屬性。,9)contentType:用于設(shè)定生成網(wǎng)頁的文件格式和編碼方式,即MIME類型和頁面字符集類型,默認(rèn)的MIME類型是text/ht
6、ml;默認(rèn)的字符集類型為ISO-8859-1。注意:除page指令中的import屬性之外,其他屬性均只能設(shè)置一次。,2 include指令,作用:使用include指令,可以將一個(gè)外部文件嵌入到當(dāng)前JSP文件中,同時(shí)解析這個(gè)頁面中的JSP語句(如果有的話)。這是個(gè)靜態(tài)的include語句,它會(huì)把目標(biāo)頁面的其他編譯指令也包含進(jìn)來。include既可以包含靜態(tài)的文本,也可以包含動(dòng)態(tài)的JSP頁面。靜態(tài)的include編譯指令會(huì)將被包
7、含的頁面加入本頁面,融合成一個(gè)頁面。include編譯指令的語法:,第三節(jié)JSP動(dòng)作指令,作用:動(dòng)作指令與編譯指令不同,編譯指令是通知Servlet引擎的處理消息,而動(dòng)作指令只是運(yùn)行時(shí)的腳本動(dòng)作。編譯指令在將JSP編譯成Servlet時(shí)起作用;而處理指令通??商鎿Q成JSP腳本,是JSP腳本的標(biāo)準(zhǔn)化寫法。,JSP動(dòng)作指令主要有如下7個(gè):jsp:forward:執(zhí)行頁面轉(zhuǎn)向,將請(qǐng)求的處理轉(zhuǎn)發(fā)到下一個(gè)頁面。jsp:param:用于傳
8、遞參數(shù),必須與其他支持參數(shù)的標(biāo)簽一起使用。jsp:include:用于動(dòng)態(tài)引入一個(gè)JSP頁面。jsp:plugin:用于下載JavaBean或Applet到客戶端執(zhí)行。jsp:useBean:創(chuàng)建一個(gè)JavaBean的實(shí)例。jsp:setProperty:設(shè)置JavaBean實(shí)例的屬性值。jsp:getProperty:輸出JavaBean實(shí)例的屬性值。,1.include,1)}" flush="true
9、"/>2)}" flush="true">3),2.forward,作用:forward指令用于將頁面響應(yīng)轉(zhuǎn)發(fā)給另外的頁面。既可以轉(zhuǎn)發(fā)給靜態(tài)的HTML頁面,也可以轉(zhuǎn)發(fā)到動(dòng)態(tài)的JSP頁面,或者轉(zhuǎn)發(fā)到容器中的Servlet。語法JSP的forward指令的格式對(duì)于JSP 1.0,使用如下語法: 1)}"/>對(duì)于JSP 1.1以上,可使用如下語法:2)}&q
10、uot;>{},3.plugin指令,plugin的語法格式如下:[[jsp:param name="parameterName" value="parameterValue"/>]][文本提示 ],說明:type:指定被執(zhí)行的Java程序的類型。code:指定被執(zhí)行的文件名,該屬性值必須以“.class”擴(kuò)展名結(jié)尾。codebase:指定被執(zhí)行文件所在的目錄。
11、 name:給該程序起一個(gè)名字用來標(biāo)識(shí)該程序。archive:指向一些要預(yù)先載入的將要使用到的類的路徑。hspace,vspace:顯示左右、上下的留白。jreversion:能正確運(yùn)行該程序必需的JRE版本。nspluginurl,iepluginurl:瀏覽器下載運(yùn)行所需JRE的地址。指令:當(dāng)不能正確顯示該Applet時(shí),顯示該指令中的文本提示。,4.useBean指令,格式: 其中:1)id屬性是JavaBean
12、的實(shí)例名2)class屬性確定JavaBean的實(shí)現(xiàn)類3)scope屬性用于指定JavaBean實(shí)例的生存范圍(page、request、session、application),5. setProperty指令,格式: 其中:1)name屬性確定需要設(shè)定JavaBean的實(shí)例名;2)property屬性確定需要設(shè)置的屬性名;3)value屬性則確定需要設(shè)置的屬性值。,格式: 其中:1)name屬性確定需要輸出
13、的JavaBean的實(shí)例名;2)property屬性確定需要輸出的屬性名。,5. getProperty指令,第四節(jié)JSP中的內(nèi)置對(duì)象,JSP腳本中包含9個(gè)內(nèi)置對(duì)象,這9個(gè)內(nèi)置對(duì)象都是Servlet API接口的實(shí)例,只是JSP規(guī)范將它們完成了默認(rèn)初始化(由JSP頁面對(duì)應(yīng)Servlet的_jspService()方法來創(chuàng)建這些實(shí)例)。也就是說,它們已經(jīng)是對(duì)象,可以直接使用。,JSP內(nèi)部對(duì)象,out:javax.servlet.jsp.
14、JspWriter的實(shí)例,該實(shí)例代表JSP頁面的輸出流,用于輸出內(nèi)容,形成HTML頁面。page:代表該頁面本身,通常沒有太大用處。也就是Servlet中的this,其類型就是生成的Servlet類,能用page的地方就可用this。 pageContext:javax.servlet.jsp.PageContext的實(shí)例,該對(duì)象代表該JSP頁面上下文,使用該對(duì)象可以訪問頁面中的共享數(shù)據(jù)。常用的方法有g(shù)etServletContex
15、t()和getServletConfig()等。,request:javax.servlet.http.HttpServletRequest的實(shí)例,該對(duì)象封裝了一次請(qǐng)求,客戶端的請(qǐng)求參數(shù)都被封裝在該對(duì)象里。這是一個(gè)常用的對(duì)象,獲取客戶端請(qǐng)求參數(shù)必須使用該對(duì)象。常用的方法有g(shù)etParameter(String paramName)、getParameterValues(String paramName)、setAttribute(
16、String atttName,Object attrValue)、getAttribute(String attrName)和setCharacterEncoding(String env)等。,Request應(yīng)用,1.獲取請(qǐng)求參數(shù)1)String getParameter(String paramName):獲取paramName請(qǐng)求參數(shù)的值。2)Map getParameterMap():獲取所有請(qǐng)求參數(shù)名和參數(shù)值所組成的Ma
17、p對(duì)象。3)Enumeration getParameterNames():獲取所有請(qǐng)求參數(shù)名所組成的Enumeration對(duì)象。4) String[] getParameterValues(String name):paramName請(qǐng)求參數(shù)的值,當(dāng)該請(qǐng)求參數(shù)有多個(gè)值時(shí),該方法將返回多個(gè)值所組成的數(shù)組。,2.操作request范圍的屬性 1) setAttribute(String attName , Object attVal
18、ue):作用:將attValue設(shè)置成request范圍的屬性值。2) Object getAttribute(String attName):作用:獲取request范圍的屬性。,Request應(yīng)用,3.解決漢字輸出問題1)在執(zhí)行獲取請(qǐng)求參數(shù)前設(shè)置編碼 request.setCharacterEncoding(“漢字編碼”)2)轉(zhuǎn)換字符編碼 //獲取原始的請(qǐng)求參數(shù)值 String rawName
19、= request.getParameter("name"); //將請(qǐng)求參數(shù)值使用ISO-8859-1字符串分解成字節(jié)數(shù)組 byte[] rawBytes = rawName.getBytes("ISO-8859-1"); //將字節(jié)數(shù)組重新編碼成字符串 String name = new String(rawBytes , "gb2312");
20、3)獲取請(qǐng)求參數(shù)同時(shí)轉(zhuǎn)換編碼 request.getParameter(“name”).getBytes ("ISO-8859-1");,Request應(yīng)用,4.獲取協(xié)議頭、服務(wù)器、客戶端等信息。見程序request.jsp,Request應(yīng)用,response:javax.servlet.http.HttpServletResponse的實(shí)例,代表服務(wù)器對(duì)客戶端的響應(yīng)。通常很少使用該對(duì)象的直接響應(yīng),而是使
21、用out對(duì)象,除非需要生成非字符響應(yīng)。response對(duì)象常用于重定向。常用的方法有: getOutputStream()、sendRedirect(java.lang.String location)等。,Response應(yīng)用,1.相應(yīng)生成圖片ImageIO.write(BufferedImage, "bmp" , response.getOutputStream());,2.重定向頁面response
22、.sendRedirect(String path)3.HTTP文件頭相應(yīng)Response.setHeader(“Refresh”, “時(shí)間”)4.動(dòng)態(tài)ContentType響應(yīng) response.setContentType(“文檔格式”;charset=編碼方式)其中文檔格式可以是text/plain(文本文件);application/x-msexcel(excel文件);application/msword(
23、Word文件),Response應(yīng)用,5.設(shè)置緩沖區(qū)response.setHeader("Pragma", "no-cache")response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", -1);,Response應(yīng)
24、用,application:javax.servlet.ServletContext的實(shí)例,該實(shí)例代表JSP所屬的Web應(yīng)用本身,可用于JSP頁面,或者Servlet之間交換信息。常用的方法有: getAttribute(String attName)、setAttribute(String attName , String attValue)和getInitParameter(String paramName)等。,ses
25、sion:javax.servlet.http.HttpSession的實(shí)例,該對(duì)象代表一次會(huì)話。當(dāng)客戶端瀏覽器與站點(diǎn)建立連接時(shí),會(huì)話開始;當(dāng)客戶端關(guān)閉瀏覽器時(shí),會(huì)話結(jié)束。常用的方法有:getAttribute(String attrName)、setAttribute(String attrName, Object attrValue)、removeAttribute(“String attrName”)、getId( )、i
26、sNew()等,config:javax.servlet.ServletConfig的實(shí)例,該實(shí)例代表該JSP的配置信息。常用的方法有g(shù)etInitParameter(String paramName)和getInitParameternames()等方法。事實(shí)上,JSP頁面通常無須配置,也就不存在配置信息。因此,該對(duì)象更多地在Servlet中有效。exception:java.lang.Throwable的實(shí)例,該實(shí)例代表其
溫馨提示
- 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. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- jsp程序設(shè)計(jì)
- jsp程序設(shè)計(jì)基于jsp新聞發(fā)布系統(tǒng)
- [jsp畢設(shè)]jsp網(wǎng)上書店程序+論文
- jsp程序設(shè)計(jì)教程
- 《jsp程序設(shè)計(jì)》實(shí)驗(yàn)指導(dǎo)
- jsp程序設(shè)計(jì)期末大作業(yè)
- jsp基礎(chǔ)教程源代碼
- 第3章 jsp語言基礎(chǔ)
- 網(wǎng)上書店系統(tǒng)(論文+jsp源程序)
- jsp程序設(shè)計(jì)習(xí)題解答(2)
- jsp_web_程序設(shè)計(jì)課程設(shè)計(jì)
- jsp程序設(shè)計(jì)考試試題與答案
- 外文翻譯--mysql和jsp的web應(yīng)用程序
- jsp汽車4s店xns程序論文
- 宏程序基礎(chǔ)
- jsp聯(lián)合銀行在線儲(chǔ)蓄應(yīng)用程序項(xiàng)目
- JSP程序考核自動(dòng)閱卷系統(tǒng)——設(shè)計(jì)與實(shí)現(xiàn).pdf
- 《程序設(shè)計(jì)基礎(chǔ)—c程序?qū)嶒?yàn)》
- 基于jsp的校園招聘網(wǎng)站設(shè)計(jì)論文[帶程序]
- JSP+SQLESRVER商場(chǎng)VIP會(huì)員管理系統(tǒng)程序已完.zip
評(píng)論
0/150
提交評(píng)論