【问题标题】:JSP form and objectJSP 表单和对象
【发布时间】:2013-01-28 17:42:00
【问题描述】:

我想问你如何在 jsp(form:form 或通常是 html 表单)中使用现有的 java 对象的属性填充表单。更改它们后,如何保存此属性?我用谷歌搜索了很长时间,但我找不到任何相关信息。感谢您提前提供帮助。

【问题讨论】:

  • 使用一些框架,如structs或spring mvc。所有这些都具有使用java对象加载jsps并将表单数据直接保存到Pojos的内置功能
  • 您使用EL 在 JSP 中填充表单,并使用表单提交时发送到服务器的参数名称从请求中检索值。
  • 是的,在家里我正在开发 spring mvc 应用程序,通过这种方式我了解如何做到这一点。但是在工作中,当我不能使用任何框架时,我有不同的项目。无论如何,谢谢你的回答。

标签: java forms jsp populate


【解决方案1】:

这取决于您使用的框架。

如果你使用任何基于组件的MVC框架,你的表单、你的对象之间的绑定都可以做到。这样您的表单将预先填充对象中可用的值,反之亦然。示例框架有 JSF、Spring MVC

如果你想手动操作

在您的 JSP 中生成表单时,您可以手动遍历 JSP 中的 java 对象并使用 scriptlet 为表单字段赋值 例如

<input type="text" name="name" value='<%=yourObject.getField()%>' />

【讨论】:

  • 是的,第二个解决方案,这正是我所需要的,谢谢 :)
  • 如果您发现该答案有用,您可以按照 SO 中的惯例接受该答案。虽然我可以尊重你的选择。
【解决方案2】:

如果您使用的是常规形式,您可以使用以下符号。

<html>
<body>
<form action="somepage.jsp">
<input type="text" name="name" value='<%=request.getParameter("name")==null?"":request.getParameter("name")'/>
<input type="submit"/>
</form>
</body>
</html>

您可以使用相同的request.getParameter("name") 调用访问服务器端的参数。 我强烈建议您在这里使用 Spring MVC、Struts2 等框架,

【讨论】:

    【解决方案3】:

    struts1、struts2 等框架可以为你做这些事情。基本上,您需要某种 bean 或 DTO 来保存 jsp 页面数据。 在 struts2 中,它非常简单、动态且功能强大。Struts2 将 jsp-page 数据保存在其 value-stack 中。

    但是在使用 servlet 的 jsp 中,您必须在 scriptlet-tags 内的 jsp-page 上使用 java-objects。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-07
      • 2015-06-10
      • 1970-01-01
      • 2011-06-11
      • 2011-02-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多