日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

揭秘EL表達(dá)式語言的基礎(chǔ)總結(jié)(2)_JSP教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:揭秘JAVA面試問題寶典
大家找工作就要面試,有面試就有對(duì)付面試的辦法。以下一些題目來自我朋友痛苦的面試經(jīng)歷,他給我總結(jié)了一下,我拿來和大家分享!提這些問題的公司包括IBM,E*Trade,Siebel,Motorola,SUN,以及其它大小公司。 面試是沒什么道理可講的,它的題目有的不合情理、脫


基本語法 

一、EL簡(jiǎn)介 
   1.語法結(jié)構(gòu) 
     ${expression} 
   2.[]與.運(yùn)算符 
     EL 提供.和[]兩種運(yùn)算符來存取數(shù)據(jù)。 
     當(dāng)要存取的屬性名稱中包含一些特殊字符,如.或?等并非字母或數(shù)字的符號(hào),就一定要使用 []。例如: 
         ${user.My-Name}應(yīng)當(dāng)改為${user["My-Name"] } 
     如果要?jiǎng)討B(tài)取值時(shí),就可以用[]來做,而.無法做到動(dòng)態(tài)取值。例如: 
         ${sessionScope.user[data]}中data 是一個(gè)變量 
   3.變量 
     EL存取變量數(shù)據(jù)的方法很簡(jiǎn)單,例如:${username}。它的意思是取出某一范圍中名稱為username的變量。 
     因?yàn)槲覀儾]有指定哪一個(gè)范圍的username,所以它會(huì)依序從Page、Request、Session、Application范圍查找。 
     假如途中找到username,就直接回傳,不再繼續(xù)找下去,但是假如全部的范圍都沒有找到時(shí),就回傳null。 
     屬性范圍在EL中的名稱 
         Page          PageScope 
         Request          RequestScope 
         Session          SessionScope 
         Application      ApplicationScope 
        
二、EL隱含對(duì)象 
   1.與范圍有關(guān)的隱含對(duì)象 
   與范圍有關(guān)的EL 隱含對(duì)象包含以下四個(gè):pageScope、requestScope、sessionScope 和applicationScope; 
   它們基本上就和JSP的pageContext、request、session和application一樣; 
   在EL中,這四個(gè)隱含對(duì)象只能用來取得范圍屬性值,即getAttribute(String name),卻不能取得其他相關(guān)信息。 
  
   例如:我們要取得session中儲(chǔ)存一個(gè)屬性u(píng)sername的值,可以利用下列方法: 
     session.getAttribute("username") 取得username的值, 
   在EL中則使用下列方法 
     ${sessionScope.username} 

   2.與輸入有關(guān)的隱含對(duì)象 
   與輸入有關(guān)的隱含對(duì)象有兩個(gè):param和paramValues,它們是EL中比較特別的隱含對(duì)象。 
  
   例如我們要取得用戶的請(qǐng)求參數(shù)時(shí),可以利用下列方法: 
     request.getParameter(String name) 
     request.getParameterValues(String name) 
   在EL中則可以使用param和paramValues兩者來取得數(shù)據(jù)。 
     ${param.name} 
     ${paramValues.name} 

   3.其他隱含對(duì)象 
  
   cookie 
   JSTL并沒有提供設(shè)定cookie的動(dòng)作, 
   例:要取得cookie中有一個(gè)設(shè)定名稱為userCountry的值,可以使用${cookie.userCountry}來取得它。 

   header和headerValues 
   header 儲(chǔ)存用戶瀏覽器和服務(wù)端用來溝通的數(shù)據(jù) 
   例:要取得用戶瀏覽器的版本,可以使用${header["User-Agent"]}。 
   另外在鮮少機(jī)會(huì)下,有可能同一標(biāo)頭名稱擁有不同的值,此時(shí)必須改為使用headerValues 來取得這些值。 

   initParam 
   initParam取得設(shè)定web站點(diǎn)的環(huán)境參數(shù)(Context) 
   例:一般的方法String userid = (String)application.getInitParameter("userid"); 
     可以使用 ${initParam.userid}來取得名稱為userid 

   pageContext 
   pageContext取得其他有關(guān)用戶要求或頁面的詳細(xì)信息。 
     ${pageContext.request.queryString}          取得請(qǐng)求的參數(shù)字符串 
     ${pageContext.request.requestURL}          取得請(qǐng)求的URL,但不包括請(qǐng)求之參數(shù)字符串 
     ${pageContext.request.contextPath}          服務(wù)的web application 的名稱 
     ${pageContext.request.method}            取得HTTP 的方法(GET、POST) 
     ${pageContext.request.protocol}          取得使用的協(xié)議(HTTP/1.1、HTTP/1.0) 
     ${pageContext.request.remoteUser}          取得用戶名稱 
     ${pageContext.request.remoteAddr }          取得用戶的IP 地址 
     ${pageContext.session.new}              判斷session 是否為新的 
     ${pageContext.session.id}                取得session 的ID 
     ${pageContext.servletContext.serverInfo}    取得主機(jī)端的服務(wù)信息 

三、EL運(yùn)算符 
   1.算術(shù)運(yùn)算符有五個(gè):+、-、*或$、/或div、%或mod 
   2.關(guān)系運(yùn)算符有六個(gè):==或eq、!=或ne、<或lt、>或gt、<=或le、>=或ge 
   3.邏輯運(yùn)算符有三個(gè):&&或and、||或or、!或not 
   4.其它運(yùn)算符有三個(gè):Empty運(yùn)算符、條件運(yùn)算符、()運(yùn)算符 
     例:${empty param.name}、${A?B:C}、${A*(B+C)} 
  
四、EL函數(shù)(functions)。 
   語法:ns:function( arg1, arg2, arg3 …. argN) 
   其中ns為前置名稱(prefix),它必須和taglib 指令的前置名稱一置 

分享:揭秘幾個(gè)提升JSP應(yīng)用程序效率的小方法
本文介紹了幾個(gè)調(diào)整JSP和servlet的一些非常實(shí)用的方法,它可使你的servlet和JSP頁面響應(yīng)更快,擴(kuò)展性更強(qiáng)。而且在用戶數(shù)增加的情況下,系統(tǒng)負(fù)載會(huì)呈現(xiàn)出平滑上長的趨勢(shì)。我將通過一些實(shí)際例子和配置方法使得你的應(yīng)用程序的性能有出人意料的提升。其中,某些

來源:模板無憂//所屬分類:JSP教程/更新時(shí)間:2010-02-06
相關(guān)JSP教程