【问题标题】:How to make html page keep displaying rows of information from servlet (when user presses submit to enter new data items) [closed]如何使html页面继续显示来自servlet的信息行(当用户按下提交输入新数据项时)[关闭]
【发布时间】:2016-10-17 07:26:02
【问题描述】:

我在 SQL 数据库中有一个表,其中包含“项目代码”、“项目名称”、“描述”、“价格”列。我正在使用 Eclipse Java IDE。使用 HTML 页面,我将创建一个表格,如图所示(上面的链接)。

当用户在 HTML 页面中按下“提交”时,它将通过将信息发送到 Java servlet 将其插入到数据库中的相应列中。如何使 HTML 页面继续显示(逐行)新数据条目,如下图所示? (例如退休金、费用如图所示。基本上,每次用户按“提交”时,我希望 HTML 页面不断添加新行并显示数据库中的数据项。

【问题讨论】:

  • 使用 jquery 或 javascript 操作 DOM,并使用 jquery 将 Ajax 发送到 servlet 以插入 DB

标签: java html mysql


【解决方案1】:

据我了解您的问题: 它可以通过不同的方式完成,我将尝试用两种简单的方式来解释。

使用 javascript - 客户端或 使用 java - 服务器端。

基本上每次您的用户按“提交”时,您都会将 html 表单发送到服务器,服务器会将一些新数据插入/更新到数据库中。现在您必须再次表示数据库中的数据。

使用 javascript + java : 每次您的用户按下提交时,您都会向服务器发送一个 AJAX 请求。使用 AJAX,您可以将表单数据发送到服务器,在您将表单数据发送到服务器后,您需要等待服务器的答复。

所以现在你的服务器必须将数据添加到数据库中,如果成功的话。 从数据库中获取所有数据,并响应客户端。 客户端必须获取数据。

获取数据后,您必须使用新数据更改 html 文档。

用java:

如果你只使用 java,你可以用提交按钮发送你的 html 表单数据。

当服务器向数据库添加数据时,您必须重新编写 html 页面,该页面现在将包含数据库中的所有数据。我建议使用 JSP(Java Server Pages)。

这两种方法的区别:

使用 javascript + java :用户按下提交按钮后,您不必刷新页面。你甚至可以做一些动画,同时等待数据从服务器返回。

使用 java(JSP):每次您的用户按下提交按钮时,您都必须刷新整个页面:这是旧方法。

只有java:

小服务程序:

if(request.getParameter("formData"))!=null) {
//databaseSaving logic;

}
   //now when it's saved, you have to get the all data, and add it to page scope, so JSP page can access to the data

request.setAttribute("dataName",data);
response.sendRedirect("index.jsp")

jsp:

//for example
//jstl and expression language
        <c:forEach items="${data}" var="dataName">
            <a href="details?id=${Zaposlenik.getId()}">   
            ${dataName.getId()}
            ${dataName.getName()}
            ${dataName.getAge()}
         </a>
            <br />
        </c:forEach>

或者你可以使用脚本

<%
//write the same code as you have written in basic java classes.
%>

javascript + java:

javascript:

这只是基本的 ajax 教程。

http://www.w3schools.com/ajax/

java:

您可以再次为此组合 servlet 和 jsp。

小服务程序:

同上。

jsp:

<table>

</table>

你可以把你的javascript放在jsp中。

<script>
//when user press submit, send request
//after your server respons with data
//change with javascript the html in jsp
</script>

我希望我有所帮助。试图解释逻辑,而不是代码。你总是可以用谷歌搜索一些例子。

【讨论】:

  • 您好,感谢您的反馈,我只想使用 servlet 和 jsp(即用户必须刷新页面)。我会做一些研究,看看如何做到这一点(我以前没有使用过 JSP,只有 html)。
  • @user6462496 如果你愿意,你可以只使用 servlet,无论如何你应该研究一下 :)
  • 我怎样才能只使用 servlet? :)
  • 这里的例子pastebin.com/QnSSn2vX
猜你喜欢
  • 1970-01-01
  • 2013-01-13
  • 2019-11-16
  • 2021-11-17
  • 1970-01-01
  • 2023-03-21
  • 2014-03-15
  • 1970-01-01
  • 2016-06-27
相关资源
最近更新 更多