Struts2中#,$,%等符号的使用

来源:互联网 发布:为什么是三生万物 知乎 编辑:程序博客网 时间:2024/05/17 22:48

1、

  • 取contextMap中key时使用,例如
  • OGNL中创建Map对象时使用,例如:

2、$

  • 在JSP中使用EL表达式时使用,例如${name}
  • 在xml配置文件中,编写OGNL表达式时使用,例如文件下载时,文件名编码。
<!--struts.xml-->${@java.net.URLEncoder.encode(filename)}

3、%

在struts2中,有些标签的value属性取值就是一个OGNL表达式,例如< s:property value=”OGNL Expression” />
还有一部分标签,value属性的取值就是普通字 符串,例如< s:textfield value=”username”/>,如果想把一个普通的字符串强制看成时OGNL,就需要使用%{}把字符串套起来。

例如< s:textfield value=”%{username}”/>。当然在< s:property value=”%{OGNL Expression}” />也可以使用,但不会这么用。


4、其他标签

  • set标签:
<br/>-------s:set------------<br/><%--s:set标签     value属性:取值是一个OGNL表达式    var属性:是一个普通的字符串    它是把value属性的值作为value,把var属性的值作为key,把存到ActionContext大map中。    --%><s:set value="'test'" var="str1"></s:set>

这里写图片描述
这里写图片描述

  • action标签
<%--s:action标签 :    name属性是指定一个action动作名称。它并不会真的去执行。动态包含进来    executeResult属性指定的是:是否执行action。取值是true/false。默认值:false--%><s:action name="action1" executeResult="true" />

这里写图片描述
这里写图片描述

  • if,elseif,else标签
<br/>-------s:if s:ifelse s:else------------<br/><%-- 条件判断的标签--%><s:set value="'C'" var="scr" /><s:if test="#scr=='D'">真差劲</s:if><s:if test="#scr=='A'">不错哦</s:if><s:else>无法评价</s:else>

这里写图片描述

  • url和a标签——很有用
        <br/>-------s:url------------<br/>        <%--s:url标签:            value属性:是把值直接输出到页面上            action属性:是把动作的请求地址输出到页面上 ${pageContext.request.contextPath}/action1            var属性:把action的取值作为value,把var的取值作为key,放到ActionContext中            注意:它会自动根据struts配置,来转换后缀名。        --%>        <s:url value="action1"></s:url><br/>        <s:url action="action1"></s:url><br/>        <s:url action="action1" var="url">            <%--把name作为key,把value作为值,绑定到请求连接地址后面。相当于get方式拼接请求参数                 注意:                    name的取值就是一个普通的字符串                    value的取值是一个OGNL表达式,要想转成字符串请使用''            --%>            <s:param name="name" value="'张三'"></s:param>        </s:url><br/>        <a href='<s:property value="#url"/>'>跳转</a>

这里写图片描述

这里写图片描述

0 0
原创粉丝点击