我在 JSP/servlet 应用程序中有一个“multipart/form-data”表单。此应用程序在 Apache tomcat 6.31 上加载。
我想知道的是我们可以将新数据添加到 servlet 中收到的表单对象吗?如果是,那怎么办?
就像是:
- JSP 页面有一个必须上传文件的表单。
- 提交表单并在 servlet 中接收到数据后,我们需要向其添加用户 ID 和密码,我们无法在 UI 层中公开这些用户名和密码。然后使用新数据将该表单重新提交到另一个 JSP/Servlet
我会这样做:
HTTPServletRequest
usingHttpServletRequestWrapper
并在请求上调用“getParameter”时返回用户和密码。(请参阅this以查看使用的示例装饰器HttpServletRequest
)HttpServletRequestWrapper
。我想知道的是我们可以将新数据添加到 servlet 中收到的表单对象吗?
要回答这个问题,您通常可以拥有其他表单控件,如文本框、单选框、复选框等,以及某种形式的FILE
控件multipart/form-data
,以防万一您还没有意识到这一点。
如果我正确理解您的要求,
您想在请求对象到达 servlet 后向它添加更多参数。
你可以这样做,
request.setAttribute("userId", "xyz");
request.setAttribute("password", "abc");
request.getRequestDispatcher("Path where you want to forward").forward(request, response);
您可以在结果页面访问相同的属性。