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

          一、ELJSTL的地位

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

          1.       JSP執行提供流程控制;                                            

          2.       設置JSP頁面的局部變量,并在以后訪問;      

          3.       提供復雜表達式(往往涉及Java對象)的值;

          4.       訪問對象的性質;                                                                   

          5.       調用JavaBean或其他Java對象的方法;

          但是如今已經不提倡在JSP中使用腳本元素:

          1.       如果使用Java代碼,開發人員就可能用到整個API,這樣就會很容易創建出不可移植的代碼,而對某種機器或系統存在依賴性;

          2.       由于能通過Java語言訪問系統元素,可能會在Jsp中混入應用業務邏輯,這就會“污染”應用的表示層;

          3.       嵌入到Jsp中的Java代碼很難閱讀和調試,因此很難維護;

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

          二、EL簡介

          1.       EL命名變量:附屬到JSP作用域對象上的屬性。${屬性名}

           

          2.       EL表達式的使用

          a)         內聯放置在模板數據中;

          b)         放在JSP動作的屬性中;

          3.       “ . ” “ [ ] “ 操作符訪問對象的性質

          4.        EL表達式中可用的操作符

          a)         算術操作符  +、-、*$/div、%mod

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

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

                                                 i.              EL進行比較時,總是會“合理地”轉換所比較的數據類型。

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

                                                 i.              Empty測試條件

                                 
                   

          5.       EL隱式對象

          a)         JSP隱式對象

                                                 i.              pageContext

          ${pageContext.request.queryString}         取得請求的參數字符串
          ${pageContext.request.requestURL}        
          取得請求的URL,但不包括請求之  參數字符串
          ${pageContext.request.contextPath}        
          服務的web application 的名稱
           ${pageContext.request.method}          
          取得HTTP 的方法(GET、POST)
          ${pageContext.request.protocol}        
          取得使用的協議(HTTP/1.1HTTP/1.0)
           ${pageContext.request.remoteUser}        
          取得用戶名稱
           ${pageContext.request.remoteAddr }        
          取得用戶的IP 地址
           ${pageContext.session.new}            
          判斷session 是否為新的
           ${pageContext.session.id}              
          取得session ID
           ${pageContext.servletContext.serverInfo}  
          取得主機端的服務信息

          b)         作用域訪問隱式對象

                                                 i.              pageScope

                                               ii.              requestScope

                                              iii.              sessionScope

                                              iv.              applicationScope

          c)         參數訪問隱式對象

                                                 i.              param

                                               ii.              paramValues

          d)         首部訪問隱式對象

                                                 i.              header

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

                                               ii.              headerValues

                                              iii.              cookie

          e)         初始化參數訪問隱式對象

                                                 i.              InitParam

          6.       EL函數

          posted on 2008-12-24 19:11 何永進 閱讀(443) 評論(0)  編輯  收藏 所屬分類: JSP
           
          主站蜘蛛池模板: 同江市| 清苑县| 蕉岭县| 行唐县| 南平市| 独山县| 太仆寺旗| 珲春市| 崇文区| 临邑县| 平乐县| 大宁县| 益阳市| 连平县| 宁强县| 江川县| 渭南市| 波密县| 洪雅县| 富民县| 安仁县| 舞阳县| 西平县| 信丰县| 中西区| 金沙县| 旺苍县| 桦南县| 泸水县| 永泰县| 阿拉尔市| 新源县| 仁化县| 河北省| 固镇县| 隆德县| 磐石市| 临泉县| 正安县| 德昌县| 乌什县|