1

我使用 jsp 和 servlet 开发这个 Web 应用程序。我想知道如何在发出请求的同一页面上显示结果。例如,通常我所做的是将请求从一个 jsp 发送到一个 servlet,然后 servlet 在单独的 jsp 上发送响应/结果。我想在同一页面上显示数据库结果。如何做到这一点?...代码片段将不胜感激。谢谢

4

3 回答 3

3

只需在请求范围内设置必要的数据,并使用RequestDispatcher#forward()将控件转发到所需的 JSP,该 JSP 反过来可以根据结果生成适当的 HTML。

request.setAttribute("results", results);
request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response);

我们的 servlets wiki 页面中的 hello world 示例也演示了这一点。

于 2012-04-17T21:03:52.537 回答
2

这是完全可能的,但您需要在您的工具集中包含 JavaScript。我的建议是在您的应用程序中使用 AJAX 方法,这意味着大量使用客户端脚本(即 JavaScript)。

DeveloperWorks 的本教程采用纯 JavaScript/Servlet 方法。如果你想做更高级的事情,我强烈建议你使用支持 AJAX 的 JavaScript 框架,比如JQuery

于 2012-04-17T20:54:48.310 回答
0

从您的 servlet 发送重定向到您的同一页面。此外,在请求中设置一些属性并将其显示在您的页面中,例如保存List<MyObject>在请求中,然后在您的 jsp 中从请求中读取列表并在表格中显示值。

于 2012-04-17T20:51:13.897 回答