OGNL特殊符号的作用,#,%,$
主要有哪些字符?
- #:获取Context的数据,构建map
- %: 强制解析OGNL,强制不解析OGNL
- $ : 在配置文件中(xml,属性文件(国际化))使用OGNL
#的用法:
<body> <h1>获取context数据</h1> <% request.setAttribute("name", "OGNL特殊字符测试"); %> <s:property value="#request.name"/> <h2>构建list集合</h2> <s:iterator var="i" value="{'aa','bb','cc'}"> <s:property value="i"/>---- <s:property value="#i"/> </s:iterator> <br> <br> <h2>构建map集合</h2> <s:iterator var="entry" value="#{'aa':'11' , 'bb':'22' , 'cc':'33' }"> <s:property value="key"/>---<s:property value="value"/> <s:property value="#entry.key"/>---<s:property value="#entry.value"/> </s:iterator> <br> <h2>单选</h2> <input type="radio" name="sex" value="男">男 <input type="radio" name="sex" value="女">女 <br> <s:radio list="{'男','女'}" name="sex" label="性别"/> <br> <s:radio list="#{'1':'男' , '2':'女'}" name="sex2" label="性别" /> </body>
%的用法:
$的用法:
国际化:message zh_CN.properties
user.login=登录
user.welcome=欢迎,${#session.user.username}
message en_US.properties
uselogin = login
user.welcome = Welcome ${#session.user.username}
xml文件:文件下载:配置:<action name="download" class="xxx.DownloadAction">
<result type="stream">
<param name = "Context-Type">文件类型</param>
<param name="Context-Disposition">attachment;filename+{文件名}</param>
</result></action>