如何使用.txt文件作为输入(servlets)制作可编辑的表

时间:2014-06-18 16:54:30

标签: java arrays servlets

我目前正在开发一个程序,该程序将从.txt文件输入数据并允许用户对其进行编辑。我在大学只上过一门编程课程(Java简介),所以我是一个初学者,但我总是愿意学习新东西。我对我应该做的事情有一些想法,但我似乎无法超越某个领域。

首先,我读入文件,它基本上是数据列表,然后创建一个多维数组,在每个元素中放置每个数据,由某种分隔符分隔。然后我通过在一些嵌套循环中输入数组元素并使用contenteditable属性来使表格可编辑来创建表格。我知道如何对这些部分进行编码,但是从这里我就陷入了困境。我希望编辑更改数组元素的值(第一部分混淆)所以我最终可以将元素放回到原始.txt文件中(我可以做这部分)。我该怎么做呢?

2 个答案:

答案 0 :(得分:0)

而不是数组使用HashMap,其中string是列名。每次编辑表格中的值时,请在arraylist中进行必要的更改。如果要更新,请使用此Map并根据需要进行迭代。

答案 1 :(得分:0)

我假设您已经在服务器内存中有文件内容(可能在Session对象或Servlet实例中),并且您可以在HTML或JSP页面中显示这些内容。

要将HTML中所做的更改发送回服务器,您需要将它们发送到Java Servlet。 Java Servlet可以使用post和get方法,在这些方法中,它们会收到HttpServletRequestHttpServletResponse个参数。你可以用两种方式做到这一点:

通过常见的HTTP POST方法。这将刷新页面并将浏览器指向servlet URL,因此您需要通过response.write()从servlet发回响应,或者重定向回原始页面再次显示文件内容。要确保数据将传递到servlet,必须将其括在表单标记中,并将名称属性添加到已修改的字段中。 name属性是通过request.getParameeter(String)从servlet获取此参数的键。

通过Ajax。您可以使用普通的vanilla javascript,jQuery或任何其他jquery帮助程序库。在这种情况下,您必须手动映射要发送到servlet的参数,并期望从中获取异步响应,这可能是您要解析的。

无论哪种方式,您的servlet都会收到一个请求,其中包含您在HTML表单或ajax参数列表中配置的参数名称。然后,将此参数与request.getParameter(paramName)一起使用,并在数组中更新它。

检查tag about servlets以更好地了解它们的工作原理。