【问题标题】:How can I get a value of an action class from another如何从另一个动作类中获取值
【发布时间】:2017-11-14 15:12:35
【问题描述】:

我有两个动作类

public class TokenAction extends Action {
    private ActionForward getToken(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest request,
            HttpServletResponse response) throws IOException {
        String token = generateToken();
        response.setContentType("text/plain");
        response.getWriter().print(token);

        return null;
    }

public class ActionTwo extends Action{
    private ActionForward doSomething(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest request,
            HttpServletResponse response)  {
        token = ???
        return actionMapping.findForward("page");
    }

}

如何从 TokenAction 进入 ActionTwo?

【问题讨论】:

    标签: java servlets struts-1


    【解决方案1】:

    基本上,在 Java 中,有多种方法可以跨上下文传递对象,最流行的可能是:

    • 通过静态变量(不推荐)
    • 通过共享参数映射
    • 通过控制器对象

    在您的情况下,由于传递给方法的参数似乎有一个包含两个调用的生命周期(尽管没有具体细节很难说),您可能应该将它们存储在参数中(HttpServletResponse 不是很对此有用,但 ActionMappingActionForm 可能是)。如果你的Actions 是在某个控制器的上下文中创建的,你可以使用控制器来传递参数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-25
      • 2020-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-09
      相关资源
      最近更新 更多