如何将数组从一个Servlet传递到另一个Servlet?

我想将多个值从一个servlet传递到另一个servlet。 请告诉我如何通过?

取决于您是否使用会话:

  1. 使用session.setAttribute()将数组存储在会话变量中;
  2. 使用session.getAttribute();检索数组;

但是变量将保持到会话终止,你用其他东西覆盖它,或者你删除它。

如果将一个servlet转发到另一个servlet,则可以将其存储在请求变量中:

  1. 了request.setAttribute()

调用后使用request.getAttribute()转发后可以读取的内容

调用RequestDispatcher.forward()

请注意,如果您正在执行重定向而不是向前转发servlet,则此方法无效。

您可以

  • 使用request.setAttribute()将您的数组作为属性放入请求上下文中
  • 使用RequestDispatcher.forward()将请求转发到第二个servlet
  • 在第二个servlet中使用request.getAttribute()读取值

您可以将数组存储在servlet 1中的用户会话中,并从servlet 2中读取它,从用户会话中获取它。 确保从servlet 2中的会话中删除该数组。