![新手經(jīng)典:JSP入門教程_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-5/28/010f1a30-759f-4ed7-84a3-d54d8b48c40a/010f1a30-759f-4ed7-84a3-d54d8b48c40a1.gif)
![新手經(jīng)典:JSP入門教程_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-5/28/010f1a30-759f-4ed7-84a3-d54d8b48c40a/010f1a30-759f-4ed7-84a3-d54d8b48c40a2.gif)
![新手經(jīng)典:JSP入門教程_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-5/28/010f1a30-759f-4ed7-84a3-d54d8b48c40a/010f1a30-759f-4ed7-84a3-d54d8b48c40a3.gif)
![新手經(jīng)典:JSP入門教程_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-5/28/010f1a30-759f-4ed7-84a3-d54d8b48c40a/010f1a30-759f-4ed7-84a3-d54d8b48c40a4.gif)
![新手經(jīng)典:JSP入門教程_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-5/28/010f1a30-759f-4ed7-84a3-d54d8b48c40a/010f1a30-759f-4ed7-84a3-d54d8b48c40a5.gif)
已閱讀5頁,還剩176頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
JavaServerPages(JSP)網(wǎng)頁程序設(shè)計,2,第三講JSP語法及內(nèi)置對象,3.1Java基礎(chǔ)知識3.2JSP語法3.3JSP內(nèi)置對象3.4HTML表單3.5JSP與客戶機的交互3.6實踐:練習(xí)JSP編程,3,3.2JSP語法,概述基本語法,4,復(fù)習(xí)JSP的概念,JavaServerPageServlet簡化設(shè)計,邏輯與界面設(shè)計分開,開發(fā)更方便;HTML語法的java擴展,加入新的標簽(,);強大的組件(JavaBean)支持功能;,5,JSP文件結(jié)構(gòu)及主要標簽,.其他HTML語言其他HTML語言,6,JSP示例(Hello.jsp),你好,你好你好,7,JSP執(zhí)行過程,*.jsp,*.java,*.class,servlet,servlet分析器,8,JSP,執(zhí)行過程,9,JSP示例(Hello_Date.jsp),你好,今天是號,星期,importjava.util.*;response.setContentType(text/html;charset=gb2312);out=pageContext.getOut();out.write(“rnrnrnrn你好,今天是rn);Datetoday=newDate();out.print(today.getDate();out.write(號,星期);out.print(today.getDay();out.write(rnrnrn);,JSP文件,servlet文件,10,JSP示例(瀏覽結(jié)果),11,JSP語法概述,JSP原始代碼中包含了JSP元素和Template(模板)data兩類Templatedata指的是JSP引擎不處理的部分,即標記以外的部分,例如代碼中的HTML的內(nèi)容等,這些數(shù)據(jù)會直接傳送到客戶端的瀏覽器JSP元素則是指將由JSP引擎直接處理的部分,這一部分必須符合JSP語法,否則會導(dǎo)致編譯錯誤。,12,jsp例子(hi.jsp),Hi-JSP實驗,Templatedata,JSP元素,13,JSP語法,JSP語法分為三種不同的類型,編譯器指令(DIRECTIVE)例如:,腳本語法(SCRIPTING),動作語法(ACTION)例如:,,14,腳本語法,腳本語法包括“HTML注釋”:“隱藏注釋”:“聲明”“表達式”“腳本段”,15,編譯器指令,編譯器指令包括“包含指令”,“頁指令”和“taglib指令”它們包含在“”卷標里。兩個主要的指令是page與include。,16,動作語法,動作語法包括,和。,17,HTML注釋,JSP語法格式如下:-或-這種注釋發(fā)送到客戶端,但不直接顯示,在源代碼中可以查看到。,18,HTML注釋(peixun2.1.jsp),HTML注釋未顯示上一行的注釋。,19,HTML注釋,20,HTML注釋(peixun2.2.jsp),要多加練習(xí)-在源文件中包括當前時間。,21,HTML注釋,22,IE中的源程序有注釋,23,隱藏注釋,JSP語法格式如下:不發(fā)送到客戶端。,24,隱藏注釋(peixun2.3.jsp),ACommentTestATestofComments,25,隱藏注釋,26,在IE中查看源代碼,27,聲明,JSP語法格式如下:或,28,聲明(test2.4.jsp),test2.4.jsp,29,表達式,用于在頁面上輸出信息,語法格式如下:或,30,表達式(peixun2.4.jsp),test,31,表達式,a=b=c=,32,peixun2.4.jsp執(zhí)行結(jié)果,33,腳本段,JSP語法格式如下:或,34,腳本段(peixun2.5.jsp),test,35,);break;case1:out.println(Youmustselectcondition1!+);,36,break;case2:out.println(Youmustselectcondition2!+);break;default:out.println(Yourselectnotin0,1,2,selectagain!+);%轉(zhuǎn)義符:雙引號“,單引號,反斜杠,回車r,換行n,制表符t,退格b,37,腳本段執(zhí)行結(jié)果,38,包含指令,include指令:向當前頁中插入一個靜態(tài)文件的內(nèi)容。JSP語法格式如下:或,39,包含指令(peixun2.6.jsp),testThecurrentdateandtimeare,40,“peixun2.6.1.jsp”,41,包含指令,42,Page指令,“Page”指令用于定義JSP文件中的全局屬性。JSP語法格式如下:,44,Page指令,屬性:1language=java聲明腳本語言的種類,目前只能用java。2.import=package.class|package.*,.需要導(dǎo)入的Java包的列表,這些包作用于程序段,表達式,以及聲明。下面的包在JSP編譯時已經(jīng)導(dǎo)入了,所以就不需要再指明了:java.lang.*javax.servlet.*javax.servlet.jsp.*javax.servlet.http.*,45,3errorPage=relativeURL設(shè)置處理異常事件的JSP文件。4isErrorPage=true|false設(shè)置此頁是否為出錯頁,如果被設(shè)置為true,你就能使用exception對象,46,page指令詳說,“”指令作用于整個JSP頁面,同樣包括靜態(tài)的包含文件。但是“”指令不能作用于動態(tài)的包含文件,比如“”??梢栽谝粋€頁面中用上多個“”指令,但是其中的屬性只能用一次,不過也有例外,那就是import屬性。因為import屬性和Java中的import語句類似(參照JavaLanguage,import語句引入得是Java語言中的類),所以此屬性就能多用幾次。無論把“”指令放在JSP的文件的哪個地方,它的作用范圍都是整個JSP頁面。不過,為了JSP程序的可讀性,以及好的編程習(xí)慣,最好還是把它放在JSP文件的頂部。,47,page指令(peixun2.7.jsp),test3TestforusingPage.,48,page指令例子運行結(jié)果,49,taglib指令,JSP語法用于引入定制標簽庫,50,taglib指令,屬性1uri=URIToTagLibraryUniformResourceIdentifier(URI)根據(jù)標簽的前綴對自定義的標簽進行唯一的命名,URI可以是以下的內(nèi)容:UniformResourceLocator(URL),由RFC2396定義,可以從以下位置查看(http:/www.hut.fi/u/jkorpela/rfc/2396/full.html)。UniformResourceName(URN),由RFC2396定義一個相對或絕對的路徑可以是標簽庫描述文件,51,2prefix=tagPrefix表示標簽在JSP中的名稱。在自定義標簽之前的前綴,比如,在中的public,如果這里不寫public,那么這就是不合法的。請不要用jsp,jspx,java,javax,servlet,sun,和sunw做為你的前綴,這些已被Sun公司聲明保留。,52,Tablib指令(peixun2.8.jsp),test,53,JSP語法格式如下:1/2/(“”指可以有多個“”標記。),54,屬性:,1、page=relativeURL|這里是一個表達式或是一個字符串用于說明你將要定向的文件或URL。這個文件可以是JSP,程序段,或者其它能夠處理request對象的文件(如asp,cgi,php)。,55,2/向一個動態(tài)文件發(fā)送一個或多個參數(shù),這個文件必須是動態(tài)文件。如果想傳遞多個參數(shù),可以在一個JSP文件中使用多個“”;“name”指定參數(shù)名,“value”指定參數(shù)值。,56,注意,“”標簽從一個JSP文件向另一個文件傳遞一個包含用戶請求的request對象?!啊睒撕炓院蟮拇a,將不能執(zhí)行。,57,例子(peixun2.9.jsp),test,58,forwardTo.jsp,59,運行結(jié)果(TOMCAT),60,包含一個靜態(tài)或動態(tài)文件.JSP語法格式如下:1flush=true/2flush=true/(“”指可以有多個“”標記。),61,的屬性,1page=relativeURL|參數(shù)為一相對路徑,或者是代表相對路徑的表達式。2flush=true這里必須使用flush=true,不能使用false值。而缺省值為false。,62,3/“”用來傳遞一個或多個參數(shù)到指定的動態(tài)文件,能在一個頁面中使用多個“”來傳遞多個參數(shù),,63,例子(peixun2.10.jsp),peixun.2.10.jsp,64,peixun2.10.1.jsp,);%,65,運行結(jié)果(TOMCAT),66,使用“”插入一個applet或Bean,必要的話還要下載一個Java插件用于執(zhí)行它。JSP語法格式如下:,68,/+textmessageforuser,69,屬性,1type=bean|applet將被執(zhí)行的插件對象的類型,你必須得指定這個是Bean還是applet,因為這個屬性沒有缺省值。2code=classFileName將會被Java插件執(zhí)行的JavaClass的名字,必須以.class結(jié)尾。這個文件必須存在于codebase屬性指定的目錄中。,70,3codebase=classFileDirectoryName將會被執(zhí)行的JavaClass文件的目錄(或者是路徑),如果你沒有提供此屬性,那么使用的jsp文件的目錄將會被使用。4name=instanceName這個Bean或applet實例的名字,它將會在Jsp其它的地方調(diào)用。,71,例子,Unabletoloadapplet,72,創(chuàng)建一個Bean實例并指定它的名字和作用范圍。JSP語法格式如下:|otherelements,74,屬性以及用法,1id=beanInstanceName在所定義的范圍中確認Bean的變量,使之能在后面的程序中使用此變量名來分辨不同的Bean,這個變量名對大小寫敏感,必須符合所使用的腳本語言的規(guī)定,這個規(guī)定在JavaLanguage規(guī)范已經(jīng)寫明。如果Bean已經(jīng)在別的“”標記中創(chuàng)建,則當使用這個已經(jīng)創(chuàng)建過Bean時,id的值必須與原來的那個id值一致;否則則意味著創(chuàng)建了同一個類的兩個不同的對象。,75,2scope=page|request|session|applicationBean存在的范圍以及id變量名的有效范圍。缺省值是page,以下是詳細說明:page-能在包含“”元素的JSP文件以及此文件中的所有靜態(tài)包含文件中使用這個Bean,直到頁面執(zhí)行完畢向客戶端發(fā)回響應(yīng)或轉(zhuǎn)到另一個文件為止。,76,request-在任何執(zhí)行相同請求的Jsp文件中使用這個Bean,直到頁面執(zhí)行完畢向客戶端發(fā)回響應(yīng)或轉(zhuǎn)到另一個文件為止。能夠使用Request對象訪問這個Bean,比如request.getAttribute(beanInstanceName)。session-從創(chuàng)建Bean開始,就能在任何使用相同session的jsp文件中使用這個Bean。這個Bean存在于整個Session生存周期內(nèi),任何在分享此Session的Jsp文件都能使用同一Bean。注意在創(chuàng)建這個Bean的Jsp文件中“”指令中必須指定“session=true”。,77,application-從創(chuàng)建Bean開始,就能在任何使用相同application的Jsp文件中使用Bean。這個Bean存在于整個application生存周期內(nèi),任何在分享此application的Jsp文件都能使用同一Bean.,78,3class=package.class使用new關(guān)鍵字以及class構(gòu)造器從一個class中實例化一個bean。這個class不能是抽象的,必須有一個公用的,沒有參數(shù)的構(gòu)造器。這個package的名字區(qū)別大小寫。4type=package.class如果這個Bean已經(jīng)在指定的范圍中存在,那么賦予這個Bean一個的數(shù)據(jù)開庫類型。如果使用type屬性的同時沒有使用class或beanName,Bean將不會被實例化。注意package和class的名稱區(qū)分大小寫。,79,5beanName=package.class|type=package.class使用java.beans.Beans.instantiate方法來從一個class或串行化的模板中實例化一個Bean,同時指定Bean的類型。Beans.instantiate方法將檢查此名稱是否表示一個類或一個串行化模板。如果這個Bean是被串行化的,那么Beans.instantiate方法將通過使用一個類裝載器讀取串行化格式(類似package.class.ser)。,80,beanName可以是package和class,也可以是表達式,它的值會傳給Beans.instantiate方法。type的值可以和Bean相同,也可以是它的基類,或者是它所實現(xiàn)的接口。package和class名字區(qū)分大小寫。,81,JSP語法格式如下:屬性:1name=beanInstanceNamebean的名字,由指定。2property=propertyName所指定的Bean的屬性名。,82,例子,/聲明引用的beantestCalendarof,83,設(shè)置Bean的屬性值.JSP語法格式如下:/,84,屬性,1name=beanInstanceName表示已經(jīng)在“”中創(chuàng)建的Bean實例的名字。2property=*儲存用戶在jsp輸入的所有值,用于匹配Bean中的屬性。,85,3property=propertyNameparam=parameterName用一個參數(shù)值來指定Bean中的一個屬性值,一般情況下是從request對象中獲得的。其中property指定Bean的屬性名,param指定request中的參數(shù)名。,86,4property=propertyNamevalue=string|使用指定的值來設(shè)定Bean屬性。這個值可以是字符串,也可以是表達式。如果這個字符串,那么它就會被轉(zhuǎn)換成Bean屬性的類型(轉(zhuǎn)換方法見表4.1)。如果是一個表達式,那么它的類型就必須和將要設(shè)定的屬性值的類型一致。如果參數(shù)值為空值,那么對應(yīng)的屬性值也不會被設(shè)定。此外,不能在同一個“”中同時使用param和value參數(shù)。,87,packagermg;publicclassstudentprivatelongclassNo;privateStringname;privateintage;privatebooleansexy;publicstudent()/構(gòu)造函數(shù)classNo=970431;name=ZZZl;age=34;sexy=true;,例:/建立類rmg.student,88,publiclonggetClassNo()returnclassNo;publicvoidsetClassNo(longno)this.classNo=no;publicStringgetName()returnname;publicvoidsetName(Stringname)=name;,89,publicintgetAge()returnage;publicvoidsetAge(intage)this.age=age;publicbooleangetSexy()returnsexy;publicvoidsetSexy(booleansexy)this.sexy=sexy;,90,91,92,第一次運行結(jié)果,93,以后運行結(jié)果,第一行發(fā)生變化,94,測試session作用域,95,96,運行結(jié)果,97,小結(jié)與習(xí)題,本局面集中介紹了JSP的各種語法,掌握這些語法使讀者進行JSP開發(fā)的基本要求,于一般的網(wǎng)頁開發(fā)不同,JSP對大小寫是敏感的,這一點要注意,尤其是對曾使用過其他開發(fā)語言的讀者。與Bean相關(guān)的幾種語法的使用將在“Bean的使用”一章中專門進行講解,因此可對照學(xué)習(xí)。熟練使用這些語法是必須的,因此讀者應(yīng)該多加練習(xí),觀察不同用法所產(chǎn)生的效果上的差異。對于給出的例子最好是自己敲入文件并觀察執(zhí)行結(jié)果。隨后的幾章將各有重點的講述與語法相關(guān)的一些問題。,98,習(xí)題,1舉例說明HTML注釋與隱藏注釋有何異同。2試寫一個JSP文件,包含所有JSP語法元素3Scriptlet中應(yīng)遵循什么樣的語法規(guī)則?4元素包含靜態(tài)文件與包含動態(tài)文件處理上有何不同?5起到什么樣的作用?使用時有哪些注意事項?6page指令能起到那些作用?有效范圍有多大?,99,實踐:練習(xí)JSP編程,1.HelloWorld.jsp最簡單的jsp程序2.Scripting.jsp程序片段3.Declaration.jsp變量的聲明4.Directive.jsp和Top.htm和Bottom.jspDirectives語法5.Include.jsp和Date.jspinclude指令6.News.jsp和Item1.htm和Item2.htm和Item3.htm和Item4.htm的使用7.ForwardTest.jsp和morning.htm和afternoon.jsp的使用,100,3.3JSP內(nèi)置對象,JSP有以下九種內(nèi)置對象,包括:request,請求對象response,響應(yīng)對象pageContext,頁面上下文對象session,會話對象application,應(yīng)用程序?qū)ο髈ut,輸出對象config,配置對象page,頁面對象exception,例外對象,101,重點介紹,request,請求對象session,會話對象application,應(yīng)用程序?qū)ο?102,綜述,有幾種對象看起來和ASP的內(nèi)置對象差不多,功能也類似,這是因為這些內(nèi)置對象的構(gòu)建基礎(chǔ)是標準化的HTTP協(xié)議。如果使用過ASP,又對Java有一定的了解的話,那么對這幾種JSP內(nèi)置對象的使用應(yīng)該能迅速掌握。需要注意的問題是對象名的寫法,包括這些對象方法的調(diào)用時也要書寫正確,因為Java語言本身是大小寫敏感的。,103,從本質(zhì)上講,JSP的這些內(nèi)置對象其實都是由特定的Java類所產(chǎn)生的,在服務(wù)器運行時根據(jù)情況自動生成,所以如果你有較好的Java基礎(chǔ),可以參考相應(yīng)的類說明,表3.1給出了他們的對應(yīng)關(guān)系。更進一步的講解將會在講解Servlet的一章中展開,如果你的Java基礎(chǔ)不太好,可以先熟悉在這一章里所介紹的各種方法的使用。,104,105,request和response,“request”對象代表的是來自客戶端的請求,例如我們在FORM表單中填寫的信息等,是最常用的對象。關(guān)于它的方法使用較多的是getParameter、getParameterNames和getParameterValues,通過調(diào)用這幾個方法來獲取請求對象中所包含的參數(shù)的值“response”對象代表的是對客戶端的響應(yīng),也就是說可以通過“response”對象來組織發(fā)送到客戶端的數(shù)據(jù)。但是由于組織方式比較底層,所以不建議普通讀者使用,需要向客戶端發(fā)送文字時直接使用“out”對象即可。,106,request對象示例,姓名,107,request對象示例(Hello_req.jsp,你好,今天是號,星期,108,request對象示例(輸出結(jié)果),你好,獨孤求敗,今天是9號,星期1,109,pageContext,“pageContext”對象直譯時可以稱作“頁面上下文”對象,代表的是當前頁面運行的一些屬性,常用的方法包括findAttribute、getAttribute、getAttributesScope和getAttributeNamesInScope,一般情況下“pageContext”對象用到得也不是很多,只有在項目所面臨的情況比較復(fù)雜的情況下,才會利用到頁面屬性來輔助處理。,110,session對象,“session”對象代表服務(wù)器與客戶端所建立的會話,當需要在不同的JSP頁面中保留客戶信息的情況下使用,比如在線購物、客戶軌跡跟蹤等?!皊ession”對象建立在cookie的基礎(chǔ)上,所以使用時應(yīng)注意判斷一下客戶端是否打開了cookie。常用的方法包括getId、getValue、getValueNames和putValue等。,111,session對象,概要HTTP是無狀態(tài)(stateless)協(xié)議;WebServer對每一個客戶端請求都沒有歷史記憶;Session用來保存客戶端狀態(tài)信息;由WebServer寫入;存于客戶端;客戶端的每次訪問都把上次的session記錄傳遞給WebServer;WebServer讀取客戶端提交的session來獲取客戶端的狀態(tài)信息;,112,session對象示例(Form表單Logon_session.html),姓名,113,session對象示例Logon_session.jsp,你的名字已經(jīng)寫入sessioncheck,114,session對象示例(Check_session.jsp),您還未登錄已經(jīng)登錄,115,application對象,“application”對象負責提供應(yīng)用程序在服務(wù)器中運行時的一些全局信息,常用的方法有g(shù)etMimeType和getRealPath等。,116,out,“out”對象代表了向客戶端發(fā)送數(shù)據(jù)的對象,與“response”對象不同,通過“out”對象發(fā)送的內(nèi)容將是瀏覽器需要顯示的內(nèi)容,是文本一級的,可以通過“out”對象直接向客戶端寫一個由程序動態(tài)生成HTML文件。常用的方法除了pirnt和println之外,還包括clear、clearBuffer、flush、getBufferSize和getRemaining,這是因為“out”對象內(nèi)部包含了一個緩沖區(qū),所以需要一些對緩沖區(qū)進行操作的方法。,117,config、page、exception,“config”對象提供一些配置信息,常用的方法有g(shù)etInitParameter和getInitParameterNames,以獲得Servlet初始化時的參數(shù)。“page”對象代表了正在運行的由JSP文件產(chǎn)生的類對象,不建議一般讀者使用。“exception”對象則代表了JSP文件運行時所產(chǎn)生的例外對象,此對象不能在一般JSP文件中直接使用,而只能在使用了“”的JSP文件中使用,118,request請求對象,1getAttribute原型:publicjava.lang.ObjectgetAttribute(java.lang.Stringname)說明:以對象的形式返回特定名稱的屬性值。這個方法允許Servlet引擎給出一個客戶請求的特定信息。(Servlet為服務(wù)器端小程序,所有JSP頁面都事先翻譯成Servlet后才執(zhí)行),119,request請求對象,如果所給名稱的屬性不存在將返回空值。屬性名應(yīng)該遵循和包命名方式同樣的約定,不要采用如“java.*”、“javax.*”及“sun.*”.這樣的命名。參數(shù):name一個標示屬性名的字符串返回值:一個包含屬性值的對象,當屬性不存在是為空。,120,request對象使用示例(peixun2.11.jsp),request用戶登錄用戶名:密碼:,121,瀏覽器類型:IENetscape資料選項:標題詳細,122,Post.jsp代碼,test);out.println(密碼:+request.getParameter(pwd)+);out.println(瀏覽器:+request.getParameter(radio)+);out.println(標題:+request.getParameter(check1)+);out.println(詳細:+request.getParameter(check2)+);out.println(隱含:+request.getParameter(hidden)+);out.println(getContentLength()=+request.getContentLength()+);,123,out.println(getContentType()=+request.getContentType()+);out.println(getRequestURI()=+request.getRequestURI()+);out.println(getServerPort()=+request.getServerPort()+);out.println(getServerName()=+request.getServerName()+);out.println(getProtocol()=+request.getProtocol()+);out.println(getRemoteAddr()=+request.getRemoteAddr()+);out.println(getHeaderNames()=+request.getHeaderNames()+);out.println(getMethod()=+request.getMethod()+);out.println(getServletPath()=+request.getServletPath()+);out.println(isRequestedSessionIdValid()=+request.isRequestedSessionIdValid()+);%,124,運行結(jié)果,125,126,session對象示例,session請輸入您的姓名:,127,post1.jsp,post.jsp您的姓名是:您最喜歡的娛樂是:,128,post11.jsp,post1.jsp您的姓名是:您喜歡的娛樂是:,129,運行結(jié)果,130,提交后,131,輸入值,132,再次提交(保存名字),133,application對象運行示例,application);out.println(peixun2.13.jspsMIMEtypeis:+application.getMimeType(peixun2.13.jsp)+);out.println(URLofpeixun2.13.jspis:+application.getResource(“/peixun2.13.jsp)+);out.println(getServerInfo()=+application.getServerInfo()+);out.println(application.getRealPath();application.log(AddaRecordtolog_file);%,134,運行結(jié)果,135,application對象實現(xiàn)網(wǎng)頁計數(shù)器,網(wǎng)頁計數(shù)器您是第位訪問者!,136,運行結(jié)果(第一次訪問),137,刷新一次,138,exception對象示例,ErrorpageloginAnerroroccuredinthebean.ErrorMessageis:,139,內(nèi)置對象小結(jié),全面介紹了JSP的幾種內(nèi)置對象。熟練使用這些內(nèi)置對象是開發(fā)JSP應(yīng)用程序的基本要求,尤其是對于request、session和application對象更是必須要掌握的。會使用對象所具有的方法,能熟練使用每一種對象的幾種常用方法。,140,3.4HTML表單,復(fù)習(xí)Web運行原理HTML表單的概念表單元素介紹HTML表單的客戶端確認客戶端表單確認實例,141,Web運行原理1,客戶端同Web服務(wù)器之間的協(xié)議為httpHTTP為超文本傳輸協(xié)議HTPP協(xié)議為“請求和響應(yīng)”協(xié)議客戶端請求包括:請求行、頭、信息體客戶端請求的方法GET、POST、HEADDELETE、TRACE、PUT提交表單的方法:GET、POST,142,Web運行原理2,服務(wù)器接收到請求后,返回HTTP響應(yīng)每個響應(yīng):狀態(tài)行、頭、信息體常見狀態(tài)404所請求的文件不存在500服務(wù)器程序出錯200OK成功信息體用于瀏覽器顯示,143,頁面訪問失敗,144,HTML表單,表單是具有輸入域、文本域的頁面用于客戶端同服務(wù)器端交互用戶在客戶端填寫表單,然后“提交”表單中的信息發(fā)送到服務(wù)器服務(wù)器返回處理情況,145,HTML表單標記,表單主標記表單中的標記是表單開始標記,結(jié)束,146,表單的例子(peixun2.15.jsp),表單用戶登錄用戶名:密碼:,147,運行結(jié)果,148,form標記,描述表單的特性,語法method表單傳輸方法GET方法將表單信息在URL后傳輸POST方法將表單信息作為信息體傳輸action為表單處理方式,通常為一個URLenctype為編碼方式,149,標記,表單中輸入信息的區(qū)域?qū)傩詔ype類型name名稱id標識maxlength最大字符數(shù)size輸入域?qū)挾葀alue域的初始值button按鈕用javascript響應(yīng),150,的類型,text文本passwowrd口令方式checkbox多選框name相同radio單選按鈕name相同image圖片hidden隱藏表單發(fā)送數(shù)據(jù)submit提交按鈕向服務(wù)器提交表單reset復(fù)位按鈕將表單充置為初始狀態(tài),151,文本框:TEXTAREA,多行文本域:參數(shù)COLS:寬度ROWS:高度NAME:名稱CPUPIV1500Memory512M,152,下拉框:SELECT,定義列表框:參數(shù)MULTIPLE可同時選取多行NAME名稱SIZE可見項目數(shù)每個項目用option標記屬性SELECTED出現(xiàn)在option表示選中,153,select的例子,北京天津上海重慶,154,表單提交,提交方式:submit類型按鈕提交表單通過普通按鈕的javascript函數(shù)傳輸方法依據(jù)中的method推薦使用POST傳輸編碼依據(jù)中的enctype處理方式依據(jù)中的action,155,表單清除,reset按鈕重置表單為初始值,156,綜合例子,表單用戶注冊用戶名:密碼:你喜歡:足球籃球,157,性別:男女你的計算機CPUPIV1500Memory512M你計算機的操作系統(tǒng),158,你所在地:北京天津上海重慶,159,運行結(jié)果,160,表單的確認,客戶端確認減少服務(wù)器負載縮短用戶等待時間兼容性難服務(wù)器端確認統(tǒng)一確認兼容性強服務(wù)器負載重,161,客戶端確認,采用javascript進行確認常用函數(shù)isBetweenisDateisTimeisDigitisEmailisEmptyisIntisReal,162,客戶端確認例子,客戶端確認用戶登錄用戶名:密碼:,163,functioncheckform(frm)varflag=true;if(.value=)alert(姓名不能為空,請輸入值!);.focus();flag=false;returnflag;,164,運行結(jié)果,165,2.3.4JSP與客
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生產(chǎn)線的設(shè)備檢修與生產(chǎn)效率提升
- 現(xiàn)代辦公環(huán)境下的會議組織策略
- 環(huán)保理念在藝術(shù)空間設(shè)計中的應(yīng)用
- 國慶節(jié)愛國實踐活動方案
- 9 古詩三首《秋夜將曉出籬門迎涼有感》(說課稿)-2024-2025學(xué)年統(tǒng)編版語文五年級下冊
- 2024年五年級語文下冊 第六單元 15 自相矛盾說課稿 新人教版
- 6 我們神圣的國土第一課時 (說課稿)- 2024-2025學(xué)年統(tǒng)編版道德與法治五年級上冊001
- Unit 3 After School Activities Let's Check(說課稿)-2023-2024學(xué)年人教新起點版英語三年級下冊
- 2024-2025學(xué)年高中物理 第六章 萬有引力與航天 2 太陽與行星間的引力(1)說課稿 新人教版必修2
- Unit5 Clothes (第六課時)(說課稿)-2024-2025學(xué)年人教新起點版英語三年級上冊001
- 《無人機測繪技術(shù)》項目3任務(wù)2無人機正射影像數(shù)據(jù)處理
- 機電隊技術(shù)員安全生產(chǎn)責任制(3篇)
- 《ISO 55013-2024 資產(chǎn)管理-數(shù)據(jù)資產(chǎn)管理指南》專業(yè)解讀和應(yīng)用指導(dǎo)材料(雷澤佳編制-2024B0)-121-240
- 小兒腹瀉課件
- 北京市通州區(qū)市級名校2025屆高一數(shù)學(xué)第一學(xué)期期末考試試題含解析
- Unit2 Travelling Around Project北京之游學(xué)生作業(yè)教學(xué)設(shè)計 -2023-2024學(xué)年高中英語人教版必修第一冊
- 項目三任務(wù)1:認識超聲波雷達(課件)
- 起重機械生產(chǎn)單位質(zhì)量安全總監(jiān)-特種設(shè)備考試題庫
- DZ∕T 0080-2010 煤炭地球物理測井規(guī)范(正式版)
- 小學(xué)生心理健康教育學(xué)情分析
- 2024年高考語文一輪復(fù)習(xí):文言文文意概括簡答題知識清單 (二)
評論
0/150
提交評論