如何将数组从一个Servlet传递到另一个Servlet?
我想将多个值从一个servlet传递到另一个servlet。 请告诉我如何通过?
取决于您是否使用会话:
- 使用session.setAttribute()将数组存储在会话变量中;
- 使用session.getAttribute();检索数组;
但是变量将保持到会话终止,你用其他东西覆盖它,或者你删除它。
如果将一个servlet转发到另一个servlet,则可以将其存储在请求变量中:
- 了request.setAttribute()
调用后使用request.getAttribute()转发后可以读取的内容
调用RequestDispatcher.forward()
请注意,如果您正在执行重定向而不是向前转发servlet,则此方法无效。
您可以
- 使用
request.setAttribute()
将您的数组作为属性放入请求上下文中 - 使用
RequestDispatcher.forward()
将请求转发到第二个servlet - 在第二个servlet中使用
request.getAttribute()
读取值
您可以将数组存储在servlet 1中的用户会话中,并从servlet 2中读取它,从用户会话中获取它。 确保从servlet 2中的会话中删除该数组。