【问题标题】:struts2 action class-1 class per (ajax)request?每个(ajax)请求的struts2 action class-1类?
【发布时间】:2011-01-14 23:05:31
【问题描述】:

在我的 struts 2 web 应用程序中,网页上有几个菜单选项卡。这些菜单选项卡在单击时会触发 ajax 操作。所有这些动作都归于一个动作类。此操作类将请求路由到帮助程序类。辅助类有一个方法:
如果 action = this,请执行此操作
如果行动=那个,那就去做
依此类推……对于每个操作(即每个选项卡)。
有人可以提供有关此设计的 cmets 吗……这是对 struts 2 的正确使用吗?或者我们应该有单独的动作类? 此外,辅助类有什么标准做法吗?(即它应该是静态的、单例的、线程安全的等)

【问题讨论】:

  • 天哪..这可能有点困难..有什么一般提示吗?我知道没有代码示例有点困难。

标签: java model-view-controller struts2


【解决方案1】:

几个想法:

  • 使用Action 类来处理多个struts2 动作并没有错; struts2 允许您将特定操作路由到类的方法。如果班级本身是一种有用的组织工具,那将很有帮助。例如,您可能有一个想要创建、读取、更新等的 Widget,而不是有一个 CreateWidgetAction、ReadWidgetAction 等会导致很多混乱的类集,最好有一个 WidgetAction 类create()、update() 等方法。鉴于您所描述的(不同的菜单选项卡),我猜它不太适合您的情况,但您当然可以做到。维护代码时要查看的文件更少。

  • 请注意,您需要将不同的操作映射到这些不同的方法以及呈现结果的不同 JSP。

  • 关于辅助类,我的建议是将视图 + 控制器相关的逻辑放在 Action 类中,但将模型逻辑留在其他类中(可能是您的辅助类)。如果您的助手类正在计算独立于表示的数据,那么这当然是合法的。但是,如果您的帮助类只是准备一个视图,请将逻辑放在 Action 本身中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-24
    • 2014-12-17
    • 2021-04-03
    • 1970-01-01
    相关资源
    最近更新 更多