struts2向结果传参数

当result类型是dispatcher时服务器跳转采用的是forward方式(相当于只有一个request),一个request有一个valuestack,两个action共用同一个value stack,所以传参数的时候就可以直接从valuestack中取出来就行。


当result类型是redirect时,采用的是客户端跳转,服务器收到request请求后会返回客户端一个信息,客户端再从新request一个请求,所以有两个request,有两个值栈,需要从第一个值栈通过<${参数}>从值栈里取出来要传的参数,在将取出的参数传到结果集里的action或jsp里。


结果集向jsp传参数的时候,不能用<s:property value="参数">取参数,因为jsp不是action,值栈里面是空的,取不出来,可以通过从StackContext里的parameters里取出相应的参数写法:<s:property value="#parameters.参数名">

struts2向结果传参数_第1张图片

你可能感兴趣的:(struts2向结果传参数)