日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Struts2 (三)OGLN

發布時間:2025/6/17 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Struts2 (三)OGLN 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

01.OGNL 的歷史

OGNL 最初是為了能夠使用對象的屬性名來建立 UI 組件 (component) 和 控制器 (controllers) 之間的聯系,簡單來說就是:視圖 與 控制器 之間數據的聯系。后來為了應付更加復雜的數據關系,Drew Davidson 發明了一個被他稱為 KVCL(Key-Value Coding Language) 的語言。 Luke 參與進來后,用 ANTLR 來實現了該語言,并給它取了這個新名字,他后來又使用 JavaCC 重新實現了該語言。目前 OGNL 由 Drew 來負責維護。目前很多項目中都用到了 OGNL,其中不乏為大家所熟知的,例如幾個流行的 web 應用框架:WebWork,Tapestry 等。

02.什么是OGNL

OGNL:Object Graph Navigation Language? 對象導航圖語言

開源項目,取代頁面中Java腳本,簡化數據訪問

和EL同屬于表達式語言,但功能更為強大

讓我們通過簡單一致的表達式語法來讀取和設置Java對象的屬性值,調用對象的方法,遍歷整個對象的結構圖,實現字段類型轉換等功能。

03.OGNL在Struts 2中的作用

表達式語言

將表單或Struts 2標簽與特定的Java數據綁定起來,用來將數據移入、移出框架

類型轉換

數據進入和流出框架,在頁面數據的字符串類型和Java數據類型之間進行轉換

?

03.值棧與OGNL

值棧(ValueStack)

Struts 2框架創建的存儲區域,具有棧的特點

Action的實例會被存放到值棧中

OGNL訪問值棧

?

按照從上到下的順序,靠近棧頂的同名屬性會被讀取

04.為什么進行類型轉換

在基于HTTP協議的Web應用中

客戶端請求的所有內容都以文本編碼方式傳輸到服務器端,服務器端的編程語言卻有著豐富的數據類型

Servlet中,類型轉換工作由開發者自己完成

?

?action

?

?struts.xml

?jsp

?

轉載于:https://www.cnblogs.com/1612ss/p/8472938.html

總結

以上是生活随笔為你收集整理的Struts2 (三)OGLN的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。