如何给action带上参数?

Eric1006 2011-07-12 10:02:00
Struts2中,我想将页面提交给jv.action,而在jv.action对应的JvAction中execute方法返回"got",“got”对应着got.jsp页面。
当进入got.jsp时,页面地址是http://....../jv.action,我该如何操作才能使页面地址后面带上参数,如http://....../jv.action?id=xxxx (不采用JS)。

...全文
570 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
deqiang135 2011-07-12
  • 打赏
  • 举报
回复
got.jsp?id=${id}&name=${name}
gaofuqi 2011-07-12
  • 打赏
  • 举报
回复
你这是响应重定向还是请求转发。响应重定向的话,直接在action中request.setAttribute("id", "123");就可以了,struts2的话还可以把id写成action的属性,在方法中给id赋值即可。
如果是请求转发的话,还要在struts配置文件中 <result name="got" type="redirect">got.jsp?id=${id}</result>。这样你就可以在页面获取到id的值了。
zwj6612 2011-07-12
  • 打赏
  • 举报
回复
不用啊 放在reques属性中 或者说 类似spring 的 module这个对象中
lyhmy 2011-07-12
  • 打赏
  • 举报
回复
直接在xml配置中给他传参数不行么,比如说
<result name="XXX" type="redirect">jv.action!execute?id=xxxx &参数2=XXX</result>
皮皮 2011-07-12
  • 打赏
  • 举报
回复
我该如何操作才能使页面地址后面带上参数,如http://....../jv.action?id=xxxx

有二种方案。

1。 在JvAction中execute中。request.setAttribute("id", id); 然后页面got.jsp 中getAttribute(id);

不过这样URL 还是http://....../jv.action.但id值传过去了。最常用。
2。就是在struts .xml中就入

<result name="got" type="redirectAction">
<param name="actionName">另一action</param>
<param name="namespace">/</param>
<param name="id">${Id}</param>
</result>

这样url 就是你想要的。

最好用第一种。
javamyself 2011-07-12
  • 打赏
  • 举报
回复
up!
itboymvc 2011-07-12
  • 打赏
  • 举报
回复
1.开始在JvActio中的Public String execute(){
ActionContext.....put("id",id);
}
2.1如果用的是XML则在<result name="get">get.jsp?id={...id}
2如果是Annotation则 @result(name="get",location=get.jsp?id={...id})
封心葬爱 2011-07-12
  • 打赏
  • 举报
回复
你最终是想做什么?把参数带到方法里处理吧。?
封心葬爱 2011-07-12
  • 打赏
  • 举报
回复
直接在你action 类里带呀。
@org.apache.struts2.convention.annotation.Result(name = "delbbs", location = "intobbs.do", type = "redirect", params = {"ss", "${ss}" }),
SS:你想传的参数

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧