最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
雜談Taglib、EL、OGNL-創(chuàng)新互聯(lián)

本篇主要是自己對 JavaWeb中 EL、OGNL、Taglib 個(gè)人理解。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、綏寧網(wǎng)站維護(hù)、網(wǎng)站推廣。

  因?yàn)橐陨蟽?nèi)容都是在 JSP 的基礎(chǔ)下產(chǎn)生的概念, 首先得說說我眼中的 JSP。

  她自由的、奔放的,就像遼闊的大海,跨越任何服務(wù)器屏障、運(yùn)行在各種平臺(tái)。

  她能容納下各種形式的代碼和標(biāo)簽庫,Java 原生代碼、JSTL 表達(dá)式、Struts Taglib 、JSF Taglib 、Webwork Taglib ....任何人自定義的各種標(biāo)簽。

  Web 視圖層的基本思想已被 JSP 闡述的淋漓盡致,但 IT 領(lǐng)域人們不喜歡陽關(guān)積極的老人。

  眼下琳瑯滿目的模版引擎以其靈活的表現(xiàn)形式和簡潔的書寫方式大有取締 JSP 的勢頭。

雜談 Taglib、EL、OGNL

回到頂部

1. Taglib(tag library) 標(biāo)簽庫

  JSP 中原生的 java 代碼,總是給人一種雜亂的感覺,與整個(gè) JSP 頁面不搭調(diào)。

  而且增加維護(hù)難度和成本、前端 JSP 美工也必須是程序員、增加程序開發(fā)成本。

  Taglib 是在這種前提下孕育而生,在很久以前已經(jīng)被很多 Javaweb mvc 框架采用和擴(kuò)展,發(fā)揚(yáng)廣大。

  小巧活潑的 Taglib 將雜亂的原生 java 代碼移出了 JSP 的世界,還原了 JSP 原本整潔干凈的樣子。

  未引入 taglib 實(shí)例代碼:

雜談 Taglib、EL、OGNL

<% @page import="cn.javass.user.UserModel" %>  <% UserModel user = (UserModel)request.getAttribute("user"); %>    
      
        用戶信息  
      
      
        姓名  
        <%=user.getName()%>  
      
      
        年齡  
        <%=user.getAge()%>  
      

雜談 Taglib、EL、OGNL

  引入 struts 標(biāo)簽和 EL 表達(dá)式 實(shí)例代碼:

雜談 Taglib、EL、OGNL

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>    
      
        用戶信息  
      
      
        姓名  
          
      
      
        年齡  
          
      

雜談 Taglib、EL、OGNL

  可能是業(yè)務(wù)邏輯不夠復(fù)雜,所以你可能沒有滿臉絡(luò)腮胡子的大叔,變?yōu)殛柟饣顫姷男□r肉的感覺,沒關(guān)系,聽我慢慢道來。

  下面是比較主流的一些 TagLib,和具體的參考資料:

  由 apache 開發(fā)維護(hù)的 JSTL(JSP Standard Tag Library),具體參考資料: http://www.runoob.com/jsp/jsp-jstl.html

  Struts2 Taglib : http://www.blogjava.net/hwpok/archive/2008/10/12/233853.html

  webwork Tablib:http://wenku.baidu.com/link?url=EjR9GEfZUMw9nW3Asq6OUSTmXAuKf018QDV7

  當(dāng)然你也可以自定義擴(kuò)展 Taglib:http://www.cnblogs.com/edwardlauxh/category/277227.html

回到頂部

2. EL(Expression Language) 表達(dá)式

  EL 設(shè)計(jì)靈感來自于 ECMAScript 和 XPath 表達(dá)式語言,它提供了在 JSP 中簡化表達(dá)式的方法。

  EL 依次從Web Page、Request、Session、Application 范圍查找值,同樣也能從定義的隱式對象 pageScope、requestScope、sessionScope和applicationScope 中獲取數(shù)據(jù)。

  EL 既不是編程語言、也不是腳本語言、最佳搭檔為 JSTL,能使用簡單方便的符號(hào)來表達(dá)和操作復(fù)雜的行為。

  不引入 EL 和 JSTL,Java 原生代碼 HTML 中渲染數(shù)據(jù)代碼示例:

雜談 Taglib、EL、OGNL

<% 
      for (User user : UserList) { 
%>
        
遍歷的當(dāng)前用戶名稱:<%=user.getName()%>
        
遍歷的當(dāng)前用戶組織機(jī)構(gòu):<%=user.getOrg()%>
<%         }  %>

雜談 Taglib、EL、OGNL

 引入 EL 和 JSTL代碼實(shí)例:


    
遍歷的當(dāng)前用戶名稱:
    
遍歷的當(dāng)前用戶組織機(jī)構(gòu):

  ${userList} 為 EL 取值, 為 JSTL 循環(huán)和輸出標(biāo)簽,引入 EL 和 JSTL 后的代碼是不是簡潔、易懂?

  至于 EL 和 JSTL 的使用方式和書寫規(guī)則,參考資料:

  EL :https://my.oschina.net/passer007/blog/610380

  JSTL: http://www.runoob.com/jsp/jsp-jstl.html

  這些東西羅列出來沒意義,遇到具體項(xiàng)目和具體業(yè)務(wù)規(guī)則時(shí),進(jìn)行搜索吧。

回到頂部

3. OGNL(Object-Graph Navigation Language) 對象圖航語言

  OGNL 是 EL 的升級版,最佳搭檔一般為 struts 和 webwork 等框架標(biāo)簽庫配合使用。

  OGNL 提供了很多高級而必須的特性,例如強(qiáng)大的類型轉(zhuǎn)換功能,靜態(tài)或?qū)嵗椒ǖ膱?zhí)行,跨集合投影,以及動(dòng)態(tài) lambda 表達(dá)式定義等。

  OGNL 的計(jì)算圍繞著 OGNL 上下文進(jìn)行,可以在屬性驅(qū)動(dòng)的框架如 struts、webwork..值棧中增、刪、改、查數(shù)據(jù)。

  引入 OGNL 和 struts 標(biāo)簽庫頁面渲染代碼實(shí)例:


    
當(dāng)前對象索引:
    
遍歷的當(dāng)前用戶名稱:
    
遍歷的當(dāng)前用戶組織機(jī)構(gòu):

  #status.index 為 OGNL 取值, struts 標(biāo)簽庫輸出和遍歷便簽。

  上述例子的舉基本為簡單常規(guī)的樣例,但實(shí)際業(yè)務(wù)邏輯總是伴隨著變化和復(fù)雜規(guī)則,OGNl 基本都能滿足你的要求。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


標(biāo)題名稱:雜談Taglib、EL、OGNL-創(chuàng)新互聯(lián)
網(wǎng)頁URL:http://fisionsoft.com.cn/article/csegpp.html