【问题标题】:Multiple forms, one servlet - Design perspective多种形式,一个 servlet - 设计视角
【发布时间】:2010-12-27 20:26:19
【问题描述】:

我想开始一个关于处理“多表单,一个 Servlet”场景的线程并讨论利弊。可以在多个用例中部署此模型,主要示例如下:

AccountDetails.jsp : 包含多个表单 UpdateAccountDetalsServlet : 根据提交的表单,调用 DAO 方法来更新数据库。

现在显而易见的解决方案是将隐藏参数传递给 servlet 并确定提交了哪个表单,但这感觉不对。为什么?

我想得到一些反馈。

谢谢。

【问题讨论】:

标签: jsp servlets


【解决方案1】:

是的,没关系。你甚至可以使用枚举:

OperationType opType = OperationType.valueOf(request.getParameter("opType"));

switch(opType) {
  case SAVE..
  case DELETE..
}

在新的 restful 模型之前的 Spring MVC 中,您可以拥有一个多动作控制器。在那里,您必须在 URL 中传递一个参数,例如 method=save,然后 spring 在您的对象上调用 save() 方法。这也是您可以实现的,但它包括反射。

【讨论】:

  • 谢谢 - 我目前实际上正在使用枚举。你宁愿使用枚举而不是每个表单/操作一个 servlet 吗?
  • 我个人会使用像 Spring MVC 这样的 web 框架。但如果不是 - 是的,我会使用枚举。实际上 - 看看 BalusC 链接 (stackoverflow.com/questions/3541077/…)
猜你喜欢
  • 2011-11-29
  • 1970-01-01
  • 2011-07-13
  • 1970-01-01
  • 1970-01-01
  • 2014-09-24
  • 2020-02-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多