【发布时间】:2010-10-28 13:25:29
【问题描述】:
我是 struts2 的新手,对 '#'、'%' 和 '$' 元素感到困惑。有一些用法,例如:
${user.name}
%{user.name}
<s:radio list="#{key1:value1,key2:value2}" />
谁能给我一个解释和例子?
【问题讨论】:
我是 struts2 的新手,对 '#'、'%' 和 '$' 元素感到困惑。有一些用法,例如:
${user.name}
%{user.name}
<s:radio list="#{key1:value1,key2:value2}" />
谁能给我一个解释和例子?
【问题讨论】:
简单来说
如果 ${user.name} 在 jsp 页面中,它是一个 EL 表达式。 如果struts.xml中的${user.name}是OGNL表达式。
如果在jsp页面中使用%{user.name},则为OGNL表达式。
最后,#{key1:value1,key2:value2} 是一个 OGNL 表达式,意思是创建一个映射,将 key1 映射到 value1 并将 key2 映射到 value2。
顺便说一句:#{key1:value1,key2:value2} 应该包含在 %{} 中,例如 %{#{key1:value1,key2:value2}},但是,struts2 标签中的某些属性会假定为 OGNL表达式,这意味着没有 %{} 是可以的。
【讨论】: