从 Servlet 转发请求时添加新参数

Add new parameters when forwarding a request from a Servlet

JSP 可以在使用一个或多个 <jsp:param> 标签转发时向 HTTP 请求添加新参数:

<jsp:forward page="newPage.jsp">
  <jsp:param name="param1" value="value1" />
  <jsp:param name="param2" value="value2" />
</jsp:forward>

从Servlet转发时如何添加参数?

RequestDispatcher dispatcher = request.getRequestDispatcher("/newPage.jsp");
// TODO: how to add parameters?
dispatcher.forward(request, response);

您需要创建新的 HttpServletRequest,因为参数是不可变的。 例如,您可以使用 HttpServletRequestWrapper 来完成。

您可以将参数连接到 URL 作为查询参数

RequestDispatcher dispatcher = request.getRequestDispatcher("/newPage.jsp?param1=value1&param2=value2");