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

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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值