struts为每个独立请求创建一个Action的方法

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

今天在javaeye上学习到的方法

如果你不喜欢Struts的传统处理模式,希望每个请求用一个独立的action对象来处理的话,可以这样:

java代码:

public abstract class BaseAction extends Action

{

public ActionForward execute(......)

{

BaseAction action = (BaseAction)this.getClass().newInstance();

return action.doExecute(......);

}

protected abstract ActionForward doExecute();

}

public class ActionA extends BaseAction

{

.....

public ActionForward doExecute(....)

{

............

return mapping.findForward(.....);

}

}

这样线程间就不会相互干扰。

同理,如果想像WW2那样通过ActionContext得到request,而不用老是要通过传参的方法得到request,也只要在BaseAction里把Action放到ThreadLocal里,然后写一个类似ActionContext的辅助类就可以实现了。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航