【问题标题】:How to retrieve specific data contents in database from servlet to jsp using java?java - 如何使用java从servlet到jsp检索数据库中的特定数据内容?
【发布时间】:2013-05-16 10:26:47
【问题描述】:

我正在开发一个 Web 应用程序并遵循 MVC 模式并使用 hibernate 和 postgresql。我的数据库表中有数据。现在我的 servlet 通过使用 select 语句访问 bean 类从数据库中检索数据并作为列表返回。在我的jsp中我有下拉列表。如果我从中选择一个选项,那么与该选项相关的数据应该显示在浏览器上。我怎样才能做到这一点。我是JSP的新手。请帮助我。我知道我可以使用 ${} 显示它。但是使用哪个语句我可以从下拉列表中访问所选选项的数据。 例如,在我的应用程序中,如果我选择一个选项说“XYZ”,那么我应该只从 Person 表中获取 XYZ 详细信息。如何实现这一点。

还有一个疑问是只有特定的值,如姓名和卷号,只有我应该从 Person 表中获取与 XYZ 相关的这两个值。

请澄清这两个疑问。 谢谢。

【问题讨论】:

  • 如何将模型中的 List 发送到 JSP ?请向我们展示您编写的一些代码。
  • 使用 RequestDispatcher 我将请求从 servlet 发送到 jsp 并将请求连同从数据库中获得的值列表一起转发。我正在关注 MVC。
  • 那么就可以使用JSTL来显示了,如答案中所述!!
  • 但是如何将选定的值从 jsp 发送回 servlet。我的第一个疑问是那个。我从下拉列表中选择一个选项。然后我必须通知 servlet 我已经选择此选项并基于此选定选项从数据库中获取与选定选项相关的数据内容。我该如何实现?
  • 您必须向 Servlet 发送request,这可以是常规请求或 AJAX 调用。有很多教程可以做到这一点。

标签: java jsp servlets jstl


【解决方案1】:

您应该使用核心 taglib - 所以在 JSP 页面的顶部添加它:

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>  

然后例如(其中“用户”例如是具有公共 getName() 方法的对象列表):

<ul>
    <c:forEach var="item" items="${users}">
        <li>    
             <c:out value="${user.name}"/>
        </li> 
    </c:forEach>
</ul>

【讨论】:

  • 谢谢..但是如何将选定的值从 jsp 发送回 servlet。我的第一个疑问是那个。我从下拉列表中选择一个选项。然后我必须通知 servlet我已经选择了这个选项,并根据这个选择的选项让我获得相关信息。我怎样才能做到这一点?
  • 您需要在这里做两件事 - 1) 是在浏览器中呈现信息。 2) 是将用户选择发送回服务器进行处理。这必须通过 HTTP 完成 - 例如表单或 ajax 请求,然后您需要从处理它的 JSP 或 Servlet 中的请求中提取参数。
  • 正是我想要做的。如何将选定的选项值从 jsp 发送到 servlet。使用 request.getParameter("selectedoption") 可以实现吗?
  • 您不能将它“从 JSP 发送到 servlet”,而是通过 HTTP 从浏览器发送到 servlet 容器 - 如何执行此操作超出了此问题的范围。
猜你喜欢
  • 1970-01-01
  • 2010-10-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-18
  • 2017-04-07
  • 2014-12-29
  • 2013-10-31
相关资源
最近更新 更多