1

所以我在“File1.html”中有一个 html 表单

<form action="MyServlet" method="post">
    MyData: <input type="text" name="data"><br>
    <input type="submit" value="submit">
</form>

然后在我的 servlet 中,我执行以下操作:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        RequestDispatcher myDispatch = request.getRequestDispatcher("File2.html");
    myDispatch.forward(request, response);
    }

因此,在用户点击 File1 中的“提交”按钮后,servlet 会将用户带到 File2。但是如何访问第二个文件中第一个文件中输入的数据呢?

4

4 回答 4

2

在使用 Dispatcher 之前设置要传递的属性

request.setAttribute("AttributeName","This is the Attribute value.");

在你的情况下

request.setAttribute("data",request.getParameter("data"));

并在发送的页面上,通过

String something =  request.getAttribute("data");
于 2013-02-19T08:50:36.437 回答
0

你可以这样得到它: -

request.getParameter("param");

于 2013-02-19T08:45:15.047 回答
0

您可以将参数放入请求:

String data = request.getParameter("data");
request.setAttribute("key",data);
myDispatch.forward(request, response);

您可以从新的 servlet 或 jsp 中获取数据,例如:

Object data = request.getAttribute("key");
于 2013-02-19T08:49:04.553 回答
0

如果重定向到静态 html 文件,则无法通过 servlet 获取参数或属性。

如果您在servlet 中没有任何业务,您可以使用 ,然后通过javascript 从File2.html 中获取数据。


或者,您可以重定向到 servlet 中的 File2.html 并通过查询字符串(如“File2.html?name=blablabla”)附加数据,并在 File2.html 中使用 javascript 来获取这些数据。

顺便说一句,在 javascript 中,您可以使用 window.location.href 来获取包含查询字符串的当前 url。

于 2013-02-21T15:36:56.393 回答