如何从一个servlet中检索会话值并传递到另一个servlet?

10
在一个servlet中,我有四个变量。我希望这四个变量都可以被另一个servlet检索到。
我在servlet 1中使用以下代码。
import javax.servlet.http.HttpSession;


session.setAttribute("id",id);

在另一个servlet中,我尝试使用以下代码获取该值...
String id = HttpSession.getAttribute("id").toString();

我认为有一种清晰的方法来跟踪会话变量。

我在网上看到了一些内容,但是都让我感到困惑。

请帮助我。

1个回答

21

首先,您需要从请求中获取Session对象。

这是发送到servlet的HTTPServletRequest对象(您可以在doGet或doPost方法中访问此对象)。

设置:

ses = request.getSession(true);
ses.setAttribute("Name","Value");

获取:

request.getSession(false).getAttribute("name")

getSession(true) 表示如果不存在 Session 就创建一个。 getSession(false) 等同于 getSession。最后,如果您想从Session中删除属性,可以使用

request.getSession().removeAttribute("Name");

如果您需要更多信息,请查看Java设置、获取和删除会话属性

TomRed


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接