2009-05-24 250 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

相关问题