1. 程式人生 > >Struts2中的OGNL詳解(和標籤庫一起使用)

Struts2中的OGNL詳解(和標籤庫一起使用)

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

—    訪問非根物件屬性,例如#session.msg表示式,由於Struts 2中值棧被視為根物件,所以訪問其他非根物件時,需要加#字首。實際上,#相當於ActionContext. getContext();#session.msg表示式相當於ActionContext.getContext().getSession(). getAttribute("msg") 。

—    用於過濾和投影(projecting)集合,如persons.{?#this.age>25},persons.{?#this.name=='pla1'}.{age}[0]。

—    用來構造Map,例如示例中的#{'foo1':'bar1', 'foo2':'bar2'}。

2.%符號

%符號的用途是在標誌的屬性為字串型別時,計算OGNL表示式的值,這個類似js中的eval,很暴力。