Struts2的Action中使用request

njyu 2009-03-02
我们在struts1.x的时候都是把值放到request,然后转到页面,然而在struts2里我们可以将需要传到页面的值当成Action的一个属性,当然也可以将该值放到request中,我想说的是,在struts2的Action在传值的时候该不该使用request?有人说使用request是还停留在1.x的阶段!不知道大家怎么看!
cbywxy 2009-03-02
原则上不用。在action也尽量少用和不用。struts2提供了一个ValueStack来替代了request,而且在传值的时候也是自动完成的。我的习惯。。。
sunsong 2009-03-02
通过ActionContext可以访问request的属性
如果要直接访问,action必须实现ServletRequestAware接口。
aishangtao 2009-03-09
这个, 一般少用,能通过valueStack的形式取到页面的值.
OuYangGod 2009-03-10
尽量少用,这样可以减小action代码与servlet API的偶合.
aishangtao 2009-03-10
同意楼上的说法。
niwei 2009-03-13
一般来说不要用,实在没办法,ServletRequestAware接口,但代码与servlet API的耦合了,代码可移植性较差。
njyu 2009-03-16
谢谢诸位!
garryyrc 2009-03-27
为什么要用servlet的  用ActionContext提供的就可以了  用值栈也行只是少了2行代码
dengjianli 2009-04-06
在用request是必须声明它。HttpServletRequrst request=ServletActionContext.getrequest();
其实struts2.x中只需要将类继承ActionSupport就行了。不需要在继承action和ServletRequestAware了。
在用到Ajax框架是可能用到servlet。把数据转换成json或者xml传到页面上。用request.write(object)。这样比较简单。辅助应用及sturts1.x和struts2.x一块
Global site tag (gtag.js) - Google Analytics