struts2中的ognl小問題

2021-04-26 01:46:10 字數 926 閱讀 8144

還是個小細節的問題 !~

本是想在註冊之後,將註冊的名字通過session.set("username",username);

然後轉到accountregist.jsp頁面,先前都寫成

或者或者

試了這幾個都不行,出現的值都是value裡的字串,而不是去值棧裡取值的,搞得真是夠鬱悶的~

#、%和$符號在ognl表示式中經常出現,而這三種符號也是開發者不容易掌握和理解的部分。在這裡筆者簡單介紹它們的相應用途。

1.#符號的用途一般有三種。

1)訪問非根物件屬性,例如示例中的#session.msg表示式,由於struts 2中值棧被視為根物件,所以訪問其他非根物件時,需要加#字首。實際上,#相當於actioncontext. getcontext();#session.msg表示式相當於actioncontext.getcontext().getsession(). getattribute(」msg」) 。

2)用於過濾和投影(projecting)集合,如示例中的persons.。

3)用來構造map,例如示例中的#。

2.%符號

%符號的用途是在標誌的屬性為字串型別時,計算ognl表示式的值。如下面的**所示:

構造map

the value of key 「foo1″ is

不使用%:

使用%:

3.$符號

$符號主要有兩個方面的用途。

在國際化資源檔案中,引用ognl表示式,例如國際化資源檔案中的**:reg.agerange=國際化資源資訊:年齡必須在$同$之間。

在struts 2框架的配置檔案中引用ognl表示式,例如下面的**片斷所示:10

100

baction-test校驗:數字必須為$為$之間!

看了這個之後就試了改為value ="%" 奇怪它就真的成功了~~哈哈~

Struts2中OGNL的 , , 使用

ognl是通常要結合struts 2的標誌一起使用,如等。大家經常遇到的問題是 和 這三個符號的使用。主要有三種用途 訪問ognl上下文和action上下文,相當於actioncontext.getcontext 下表有幾個actioncontext中有用的屬性 名稱作用例子 parameters ...

struts2中ognl標籤的使用

一 1 list 表示要顯示的資料列表 2 listkey 表示提交表單時提交資料列表中物件的該字段 3 listvalue 表示顯示時顯示資料物件列表中該字段的內容 4 name 表示提交到action中後與該字段相匹配 5 headervalue 表示介面顯示時最上面的一條,相當於bootstr...

struts2中根物件以及ognl

struts2中的ognl表示式語言是對xwork的ognl的封裝。我們要理解一下幾點 1 struts2中將actioncontext作為ognl的上下文環境 actioncontext內部含有乙個map物件 2 struts2中的 ognl表示式語言的根物件是乙個valuestack value...