所以我在“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中的“submit”按钮后,servlet将用户带到File2。但是如何访问第二个文件中第一个文件中输入的数据?
答案 0 :(得分:2)
在使用Dispatcher之前设置要传递的属性
request.setAttribute("AttributeName","This is the Attribute value.");
在你的情况下
request.setAttribute("data",request.getParameter("data"));
并在已分页的页面上,通过
获取String something = request.getAttribute("data");
答案 1 :(得分:0)
你可以这样做: -
request.getParameter("param");
答案 2 :(得分:0)
您可以将参数放入请求:
String data = request.getParameter("data");
request.setAttribute("key",data);
myDispatch.forward(request, response);
你可以从新的servlet或jsp中获取数据:
Object data = request.getAttribute("key");
答案 3 :(得分:0)
如果您重定向到静态html文件,则无法通过servlet获取参数或属性。
如果您在servlet中没有任何业务,您可以使用,然后通过javascript从File2.html获取数据。
或者您可以重定向到servlet中的File2.html并通过查询字符串附加数据,如“File2.html?name = blablabla”,并使用File2.html中的javascript来获取这些数据。
btw,在javascript中你可以使用window.location.href来获取包含查询字符串的当前url。