CoffeeTree
          IT 男人's Blog helloheyongjin@sina.com
          你大娘已經(jīng)不是你從前的大娘,你大爺依舊是你大爺
           

          一、ELJSTL的地位

          JSP中使用腳本元素的主要需求:

          1.       JSP執(zhí)行提供流程控制;                                            

          2.       設(shè)置JSP頁(yè)面的局部變量,并在以后訪問(wèn);      

          3.       提供復(fù)雜表達(dá)式(往往涉及Java對(duì)象)的值;

          4.       訪問(wèn)對(duì)象的性質(zhì);                                                                   

          5.       調(diào)用JavaBean或其他Java對(duì)象的方法;

          但是如今已經(jīng)不提倡在JSP中使用腳本元素:

          1.       如果使用Java代碼,開(kāi)發(fā)人員就可能用到整個(gè)API,這樣就會(huì)很容易創(chuàng)建出不可移植的代碼,而對(duì)某種機(jī)器或系統(tǒng)存在依賴性;

          2.       由于能通過(guò)Java語(yǔ)言訪問(wèn)系統(tǒng)元素,可能會(huì)在Jsp中混入應(yīng)用業(yè)務(wù)邏輯,這就會(huì)“污染”應(yīng)用的表示層;

          3.       嵌入到Jsp中的Java代碼很難閱讀和調(diào)試,因此很難維護(hù);

          引入ELJSTL可以寫(xiě)出完全不含腳本的程序,前兩項(xiàng)要求由JSTL處理,后三項(xiàng)由EL處理

          二、EL簡(jiǎn)介

          1.       EL命名變量:附屬到JSP作用域?qū)ο笊系膶傩浴?/span>${屬性名}

           

          2.       EL表達(dá)式的使用

          a)         內(nèi)聯(lián)放置在模板數(shù)據(jù)中;

          b)         放在JSP動(dòng)作的屬性中;

          3.       “ . ” “ [ ] “ 操作符訪問(wèn)對(duì)象的性質(zhì)

          4.        EL表達(dá)式中可用的操作符

          a)         算術(shù)操作符  +-*$/div%mod

          b)         邏輯操作符  &&and||or!not

          c)         比較操作符  ==eq!=ne<lt>gt<=le>=ge

                                                 i.              EL進(jìn)行比較時(shí),總是會(huì)“合理地”轉(zhuǎn)換所比較的數(shù)據(jù)類型。

          d)         其他  Empty運(yùn)算符、條件運(yùn)算符、()運(yùn)算符

                                                 i.              Empty測(cè)試條件

                                 
                   

          5.       EL隱式對(duì)象

          a)         JSP隱式對(duì)象

                                                 i.              pageContext

          ${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 的方法(GETPOST)
          ${pageContext.request.protocol}        
          取得使用的協(xié)議(HTTP/1.1HTTP/1.0)
           ${pageContext.request.remoteUser}        
          取得用戶名稱
           ${pageContext.request.remoteAddr }        
          取得用戶的IP 地址
           ${pageContext.session.new}            
          判斷session 是否為新的
           ${pageContext.session.id}              
          取得session ID
           ${pageContext.servletContext.serverInfo}  
          取得主機(jī)端的服務(wù)信息

          b)         作用域訪問(wèn)隱式對(duì)象

                                                 i.              pageScope

                                               ii.              requestScope

                                              iii.              sessionScope

                                              iv.              applicationScope

          c)         參數(shù)訪問(wèn)隱式對(duì)象

                                                 i.              param

                                               ii.              paramValues

          d)         首部訪問(wèn)隱式對(duì)象

                                                 i.              header

          ${header["User-Agent"]}  獲得瀏覽器版本

                                               ii.              headerValues

                                              iii.              cookie

          e)         初始化參數(shù)訪問(wèn)隱式對(duì)象

                                                 i.              InitParam

          6.       EL函數(shù)

          posted on 2008-12-24 19:11 何永進(jìn) 閱讀(442) 評(píng)論(0)  編輯  收藏 所屬分類: JSP
           
          主站蜘蛛池模板: 湘潭市| 夏津县| 攀枝花市| 赫章县| 建水县| 双城市| 钟山县| 迁西县| 柘荣县| 搜索| 龙泉市| 瓮安县| 报价| 区。| 威宁| 夏河县| 三穗县| 南城县| 红桥区| 达州市| 阆中市| 新安县| 金华市| 神池县| 阿克苏市| 杂多县| 陇西县| 湘潭县| 雷波县| 藁城市| 崇左市| 西乌珠穆沁旗| 常宁市| 哈密市| 石棉县| 互助| 泊头市| 吉隆县| 扶风县| 焉耆| 巨野县|