struts2中action以及request中参数的获取方法

经过struts2"加工"的request里面内容分布是下面这样的

{

    "request":{

        "attrib1":"attrib1",

        "attrib2":"attrib2",

        "valuestack":{

            "actioncontext":"actioncontext",

            "useraction":[

                "property1",

                "property2"

            ]

        }

    }

}

request里面有个ValueStack的东西,里面包含了一个ActionContext和Action本身。

而ActionContext里面又包含了以Map形式展现了的request,session,application等这些scope。

 

你可以在action中调用servletActionContext获得HttpServletReqeust对象,直接放入request中,那这个属性就成了上面的attrib1,attrib2。(官方不推荐直接在action中用到servlet API)你也可以把属性设在action中,那就成了上面的property1,property2了

 

在页面上,这两者都可以用<s:property/>标签取得,但是取得方法是不一样的,property1,2可以直接用

<s:property value="property1"/>

 

这样取到

但是如果你用同样方法取attrib1,如<s:property value="attrib1"/>则什么也不会得到。

如何获得attrib1? 如何用<s:property>获取直接存在request中的属性?

是通过ognl表达式 ,<s:property value="#request.attrib1"/> 这样就行了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值