一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

JSP 的腳本,指令,動(dòng)作

 昵稱(chēng)27831725 2016-05-03

JSP 的腳本,指令,動(dòng)作

Posted on 2013-03-03 01:20 季楓 閱讀(1998) 評(píng)論(0) 編輯 收藏
JSP 腳本元素 
  1. 表達(dá)式:<%= xx%>  
  2. Scriptlet:<% xxx %>  
  3. 聲明  :<%!xxx %>    


表達(dá)式 的概念 
  1. 1.是對(duì)數(shù)據(jù)的顯示,系統(tǒng)將其對(duì)作為一個(gè)值進(jìn)行計(jì)算并顯示  
  2. 2.不能以 分號(hào) " ; " 結(jié)尾  
  3. 3.表達(dá)式的值 直接嵌入到html頁(yè)面即可以直接在瀏覽器中輸入結(jié)果  

  1. <body>  
  2.     <h1>JSP 表達(dá)式</h1>  
  3.     <b>pi的值</b><%=Math.PI %>   <br/>   
  4.     <b>110,119中最大的值</b><%=Math.max(110,119)%>   <br/>    
  5.     <b>110,119中最小的值</b><%=Math.min(110,119)%>   <br/>   
  6.     <b>3+2-5的值</b><%=3+2-5%>   <br/>   
  7.     <b>(3+2)==5的值</b><%=(3+2)==5%>   <br/>    
  8.     <b>(3+2)!=5的值</b><%=(3+2)!=5%>   <br/>     
  9.   </body>  


JSP ScriptLet 
  1. 1.就是在JSP頁(yè)面嵌入 java腳本  

  1. <body>  
  2.  <%   
  3.         String name="toy";   
  4.         System.out.println(name); //打印到 控制臺(tái) 去了哦!  
  5.           
  6.         //打印到 頁(yè)面中去  
  7.         for(int i=1;i<10;i++){  
  8.             for(int j=0;j<i;j++){  
  9.                 out.println(j);  //調(diào)用 jsp的 out對(duì)象  在頁(yè)面上顯示了哦  
  10.             }  
  11.             out.println("<br/>");  
  12.         }  
  13.      %>  
  14. </body>  


JSP 聲明 
  1. 1.就是在JSP中聲明 java 的方法和 變量 (用于定義JSP代表Servlet的成員變量和方法名)  
  2. 2.JSP的聲明的變量 是針對(duì)所有的請(qǐng)求,且生命周期是整個(gè)WEB應(yīng)用程序  

  1. <body>  
  2. <%!  
  3.       // 聲明 servlet中的 成員變量和方法  
  4.         int numTimes=3;  
  5.           
  6.         public String sayHello(String name){  
  7.            return "Hello  "+name+"!";  
  8.         }  
  9.       %>  
  10.        <br/>  
  11.       <%  
  12.          //每刷新頁(yè)面一下  numTimes就會(huì)累加 這樣說(shuō)明是 成員變量  
  13.          //而且 說(shuō)明 JSP (servlet) tomcat啟動(dòng)的時(shí)候  就只實(shí)例化一次 然后被緩存起來(lái)了 所以  這個(gè)變量 就會(huì)一直累加  
  14.         out.println(numTimes);  
  15.         numTimes++;  
  16.         out.println("<br/>");  
  17.         out.println(sayHello("admin"));  
  18.        %>  
  19.   </body>  


JSP 的指令 
  1. 1.page  
  2. 2.include  
  3. 3.taglib  
  4. 語(yǔ)法為:  
  5. <%@ 指令名稱(chēng)  屬性1="值1" .....%>  


page 指令 
  1. 1.用于設(shè)置JSP的屬性  
  2. 2.<%@ page contentType="text/html;charset=GBK" %>  

language 定義要使用的腳本語(yǔ)言,如果在將來(lái)的JSP容器支持 多種語(yǔ)言可以使用它 "java"
import 定義以","分割的類(lèi)或者包名的列表,就像通常在java代碼中使用的import語(yǔ)句那樣 無(wú)
pageEncoding 指定JSP文件本身的字符集編碼 GBK
contentType 定義JSP字符編碼方法和JSP頁(yè)面響應(yīng)的MIME類(lèi)型 cha'tset=iso-8859-1
isErrorPage 表示當(dāng)前頁(yè)面作為 錯(cuò)誤頁(yè)面 true ,false
errorPage 定義處理異常的JSP頁(yè)面 error_url
isELIgnored 設(shè)置是否忽略JSP頁(yè)面中的EL表達(dá)式的執(zhí)行 "fasle"
session 指定這個(gè)頁(yè)面是否參與一個(gè)HTTP會(huì)話 "true"

include 指令 
  1. 1.用于在運(yùn)行時(shí)將html 或者 JSP 嵌入到另一個(gè) JSP 頁(yè)面  
  2. 2.先合并,再編譯  

  1. <body>  
  2.   <%@ include file="/head.jsp" %>   
  3.        <%=basePath%><br/>  
  4.        <b>嵌套的頁(yè)面中不能 在 腳本中 定義 父頁(yè)面 相同的 變量 否則會(huì)報(bào)錯(cuò)</b>  
  5.        <b>嵌套的頁(yè)面 中能用父頁(yè)面中的變量</b>  
  6.        <b>父頁(yè)面中可以 用 子頁(yè)面中的變量</b>  
  7. </body>  


taglib 指令 
  1. 1.可以讓JSP頁(yè)面使用 標(biāo)簽  
  2. 2.是在JSP頁(yè)面中,將標(biāo)簽描述符文件引用到該頁(yè)面中,并且 設(shè)置前綴,利用前綴 使用標(biāo)簽文件中的標(biāo)簽  

  1. <body>  
  2. <%@ taglib uri="http://java./jsp/jstl/core"  prefix="c"%>  
  3.   
  4. </body>  


JSP 的動(dòng)作 
JSP 動(dòng)作的介紹 
  1. 在該JSP被翻譯成Servlet源代碼的過(guò)程中,當(dāng)容器遇到標(biāo)準(zhǔn)動(dòng)作元素時(shí),就調(diào)用與之對(duì)應(yīng)的Servlet的方法來(lái)替代它,所有標(biāo)準(zhǔn)動(dòng)作元素的前面都有一個(gè)JSP前綴作為標(biāo)記,一般形式如下:  
  2. <jsp:標(biāo)簽名 ...屬性.../>  

  1. 1.<jsp:userBean>:在JSP中定義使用一個(gè)JavaBean的實(shí)例  
  2. 2.<jsp:setProperty>: 設(shè)置一個(gè)JavaBean的屬性  
  3. 3:<jsp:getProperty>:從JavaBean中獲取一個(gè)屬性值  
  4. 4:<jsp:include>:在JSP頁(yè)面包含一個(gè)外部的文件  
  5. 5:<jsp:forward>:把到達(dá)的請(qǐng)求轉(zhuǎn)發(fā)另一個(gè)頁(yè)面進(jìn)行處理  
  6. 6:<jsp:param>:用于傳遞參數(shù)值  
  7. 7:<jsp:plugin>:用戶在指定的客戶瀏覽器中插入插件的屬性  
  8. 8:<jsp:params>:用戶向HTML頁(yè)面的插件傳遞參數(shù)值  
  9. 9:<jsp:fallback>:指定如何處理客戶點(diǎn)不支持插件運(yùn)行的情況  
  10. 10<jsp:root>:  
  11. 11<jsp:declaration>:  
  12. 12<jsp:scriptlet>:  
  13. 13<jsp:expression>:  
  14. 14<jsp:text>:  
  15. 15<jsp:output>:  
  16. 16<jsp:attribute>:  
  17. 17<jsp:body>:  
  18. 18<jsp:element>:  
  19. 19<jsp:invoke>:  
  20. 20<jsp:doBody>:  


JSP的標(biāo)準(zhǔn)動(dòng)作的分類(lèi) 6組 
  1. 1.jsp中使用大JavaBean的標(biāo)準(zhǔn)動(dòng)作<jsp:userBean>定義一個(gè)使用JavaBean,實(shí)例,ID屬性定義實(shí)例名稱(chēng),<jsp:getProperty> 從一個(gè)JavaBean中獲取一個(gè)屬性值,并將其添加到響應(yīng)中;<jsp:setProperty> 設(shè)置一個(gè)JavaBean的屬性  
  2.   
  3. 2.在jsp中包含其他jsp文件或者web資源的標(biāo)準(zhǔn)動(dòng)作,<jsp:include> 在請(qǐng)求處理階段包含來(lái)之一個(gè)Servlet或者jsp文件的響應(yīng),注意和include指令不同  
  4.   
  5. 3.將到達(dá)的請(qǐng)求 轉(zhuǎn)發(fā)到另一個(gè)jsp頁(yè)面或者web資源,以便進(jìn)行下一步的操作的標(biāo)準(zhǔn)動(dòng)作,<jsp:forward>   
  6.   
  7. 4:在其他標(biāo)準(zhǔn)動(dòng)作中間指定參數(shù)的標(biāo)準(zhǔn)動(dòng)作,<jsp:param>對(duì)使用<jsp:include> 或者 <jsp:forward>傳遞到另一個(gè)Servlet和jsp頁(yè)面請(qǐng)求添加一個(gè)傳遞參數(shù)  
  8.   
  9.   
  10. 5.在客戶端的頁(yè)面嵌入java對(duì)象 (例如 applet,是運(yùn)行在客戶端的小java程序)的標(biāo)準(zhǔn)動(dòng)作  
  11. <jsp:plugin>根據(jù)瀏覽器類(lèi)型為java插件生成 Object或者 Embed標(biāo)記 <jsp:params><jsp:fallback>  
  12.   
  13. 6.僅僅用戶標(biāo)記文件的標(biāo)準(zhǔn)動(dòng)作  
  14.  <jsp:attribute>  <jsp:body> <jsp:invoke>  <jsp:dobody> <jsp:element> <jsp:text> <jsp:output>  


<jsp:userBean> 
  1. <jsp:useBean id=”name” class=”package.class” scope=”….” type=”…”/>  
  2. id:給一個(gè)類(lèi)實(shí)例取名并且作為整個(gè)JSP頁(yè)面的唯一標(biāo)記,如果需要?jiǎng)?chuàng)建一個(gè)新的JavaBean,這也是引用這個(gè)JavaBean的實(shí)例的名稱(chēng)  
  3.   
  4. class:javaBean組將的完整java類(lèi)名,,一定要包括包名,如果容器沒(méi)有找到指定的類(lèi)實(shí)例,則會(huì)根據(jù)這個(gè)class屬性指定的完整類(lèi)名來(lái)創(chuàng)建一個(gè)新的javaBean的實(shí)例進(jìn)行引用  
  5.   
  6.  type:告訴容器這里的javaBean實(shí)例需要實(shí)現(xiàn) 一個(gè)Java接口或者一個(gè) 超類(lèi),class和type 必須選其中一個(gè)  
  7.   
  8.  scope: 這個(gè)這個(gè)JavaBean的在那種上下文中可用,page(PageContext):在當(dāng)前頁(yè)面  request(ServletRequest):請(qǐng)求方法, session(httpSession)會(huì)話范圍,appliaction 應(yīng)用程序范圍.  


<jsp:setProperty> 
  1.  1:  
  2. <jsp:userBean id="myName" ...>  
  3.    <jsp:setProperty name="myName" property="someProperty" .../>  
  4. </jsp:userBean>  
  5.   
  6.  2.  
  7.  <jsp:userBean id="myName" ...>   
  8.  <jsp:setProperty name ="myName" property="somePropery" .../>  
  9.   
  10. name:是必須設(shè)置 知道是javaBean的名稱(chēng)  
  11.   
  12. property:必須的,指定對(duì)javaBean 的屬性中那些值進(jìn)行設(shè)置,有個(gè)特殊的用法 "* "表示在設(shè)置所有名字與javaBean 屬性名稱(chēng)匹配的請(qǐng)求參數(shù)都被傳遞到相應(yīng)屬性的get方法  
  13.   
  14. value:指定屬性的值  
  15.    
  16.  param:這個(gè)屬性 和value 不能同時(shí)使用,只能用一個(gè), 如果都沒(méi)有使用,就會(huì)為 使用javaBean中的默認(rèn)值,如果使用property屬性,容器就會(huì)把property指定的屬性變量設(shè)置為param指定的請(qǐng)求的參數(shù)值.  


<jsp:setProperty> 
  1. name:表示javaNean在jsp中的標(biāo)記  
  2. property:表示提取javaBean中那個(gè)屬性的值  


  1. <jsp:userBean id="testBean" class="com.helloworld.SimpleBean">  
  2.    <jsp:setProperty name="testBean" property="message" value="Hello"/>  
  3. </jsp:userBean>  
  4.   
  5. <h1>取值/h1>  
  6. <jsp:getProperty name="testBean" property="message"/>  
  7.   
  8. <h1>重新賦值</h1>   
  9. <jsp:setProperty name="testBean" property="nessage" value="hello World" >  
  10.   
  11. <h1>使用EL表達(dá)式取值</h1>   
  12. ${testBean.message}  


<jsp:include> 
  1. <jsp:include page="...URL..." flush="true|false"/>  
  2.    
  3. <jsp:include page=" ...URL... flush="true|false">  
  4.   <jsp:param ..../>  
  5. </jsp:include>  


include指令 和include動(dòng)作的差別 
(有的稱(chēng)為 動(dòng)態(tài)導(dǎo)入 和  靜態(tài)導(dǎo)入) 
  1. 1.語(yǔ)法不同   
  2.   指令: <%@ include file="..url.." %>  
  3.   動(dòng)作: <jsp:include page="..url" />  
  4.   
  5. 2. 編譯合并順序不同  
  6.   指令:先合并后在進(jìn)行一起編譯  (只有一個(gè)編譯文件)  
  7.   動(dòng)作:單獨(dú)編譯 然后合并 編譯后的二進(jìn)制文件 (會(huì)有多個(gè)編譯文件)  
  8.   
  9. 3.變量的使用  
  10.   指令:不能定義 父頁(yè)面的 同名變量 ,可以修改 和使用 父頁(yè)面的變量,父頁(yè)面也可以使用子頁(yè)面的變量   
  11.   動(dòng)作:能定義 父頁(yè)面的同名變量 ,不可以修改和使用 父頁(yè)面的變量.父頁(yè)面不能使用 子頁(yè)面的變量  
  12.   
  13. 4.變量的作用域  
  14.   指令:會(huì)延長(zhǎng) 父頁(yè)面變量的生命周期 注意 變量的值的變化   
  15.   動(dòng)作:不會(huì)影響變量的作用域和值  
  16.   
  17. 5.編譯報(bào)錯(cuò)  
  18.   指令:使用 父頁(yè)面的變量的時(shí)候 子頁(yè)面會(huì)報(bào)編譯異常,頁(yè)面前面會(huì)有 "紅叉叉"(但是能正常使用,可以忽略)  
  19.   動(dòng)作:不會(huì)有編譯異常   


<jsp;forward> 
  1. <jsp:forward page="/util/errorPage.jsp">  //一個(gè)相對(duì)的路徑  
  2. <jsp:forward page="<%=someJavaExpression%>">  // 一個(gè) 動(dòng)態(tài)值  


<jsp:param> 
  1. 一般與<jsp:include > 和<jsp:forward> 一起使用  
  2. lt;body>  
  3.  <jsp:include page="date.jsp">  
  4.      <jsp:param name="" value=""/>  
  5.  </jsp:include>   
  6. lt;/body>  


<jsp:plugin> 
  1. <jsp:plugin type=" ..applet 或者  javaBean " code=""  codebase="" archive=" ." >  
  2. </jsp:plugin>  
  3.   
  4. type:用來(lái)指定 該插件是applet 或者 javaBean  


<jsp:params> 
  1. <body>  
  2.    <jsp:plugin type="applet|JavaBean" code="">  
  3.      <jsp:params>  
  4.         <jsp:param name="" property=""  value=""/>  
  5.         <jsp:param name="" property=""  value=""/>  
  6.         <jsp:param name="" property=""  value=""/>  
  7.      </jsp:params>  
  8.    </jsp:plugin>  
  9. </body>  


<jsp:fallback> 
  1. <jsp:fallback>  
  2.    客戶端不支持插件運(yùn)行時(shí)候顯示的 html和 jsp 代碼  (只有客戶端不支持的時(shí)候才能運(yùn)行)  
  3. </jsp:fallback>  

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多

    日韩欧美好看的剧情片免费| 日本人妻中出在线观看| 精品国自产拍天天青青草原| 九九热精品视频免费观看| 少妇人妻精品一区二区三区| 国语久精品在视频在线观看| 91亚洲精品亚洲国产| 国产成人免费激情视频| 国产原创激情一区二区三区| 手机在线观看亚洲中文字幕| 亚洲国产精品久久综合网| 欧美成人高清在线播放| 久久99爱爱视频视频| 欧美日韩视频中文字幕| 亚洲精品黄色片中文字幕| 欧美丝袜诱惑一区二区| 日本在线视频播放91| 国产极品粉嫩尤物一区二区| 好吊妞视频这里有精品| 一二区中文字幕在线观看| 久久精品偷拍视频观看| 欧美性高清一区二区三区视频| 亚洲一区二区欧美在线| 亚洲精品中文字幕一二三| 国产亚洲视频香蕉一区| 中文字日产幕码三区国产| 亚洲国产一级片在线观看| 国产对白老熟女正在播放| 亚洲综合天堂一二三区| 亚洲av专区在线观看| 亚洲精品中文字幕欧美| 婷婷基地五月激情五月| 国产又粗又猛又爽又黄的文字| 日本深夜福利在线播放| 日本高清一区免费不卡| 久久热这里只有精品视频 | 国产亚洲精品香蕉视频播放| 老司机精品视频在线免费| 在线亚洲成人中文字幕高清| 日本欧美一区二区三区在线播| 加勒比系列一区二区在线观看 |