2009-05-24 251 views
3

我是struts2的新手,被'#','%'和'$'元素所困惑。有一些用法如下:

${user.name} 
%{user.name} 
<s:radio list="#{key1:value1,key2:value2}" /> 

有沒有人給我一個解釋和例子?

回答

4

簡單說就是

如果$ {user.name}在jsp頁面中,它是一個EL表達式。 如果struts.xml中的$ {user.name}是OGNL表達式。

如果%{user.name}在jsp頁面中,它是一個OGNL表達式。

最後,#{key1:value1,key2:value2}是一個OGNL表達式,它意味着創建一個映射,將key1映射到value1和key2映射到value2。 #{key1:value1,key2:value2}應該包裝在%{}中,就像%{#{key1:value1,key2:value2}}一樣,然而,struts2標籤中的一些屬性會認爲是OGNL表達式,這意味着沒有%{}是可以的。

+0

但是,當我可以使用它和當我不能使用時,#user.name和%{user.name}之間的區別是什麼? – javagirl 2012-05-31 15:38:57

相關問題