1

我是 cookie 管理的新手。我只想从一个简单的场景开始。当用户成功登录到他的帐户时,会生成一个 uid(从数据库的 Users 表中相应行的 uid 中获取)并作为 cookie 存储在用户系统的硬盘上。登录后用户被重定向到他的主页。用户转到另一个可访问的页面,例如 myinfo.jsp。myinfo.jsp 包含一个文本字段,其中要显示的 uid 将从存储在硬盘上的 cookie 中检索。我希望当用户导航到 myinfo.jsp 时,他应该在文本字段中看到他的 uid。

我正在使用 J2EE 技术。

有人可以建议一种方法来完成这个简单的任务。或者有人可以放一些to the point to my this simple task教程的链接。我会感谢任何帮助或提示。谢谢。

4

1 回答 1

1

您可以在呈现 jsp 的操作类中设置文本字段的值。如果您使用会话管理器来存储活动登录信息,您可以执行以下操作。

User user = (User)request.getSession().getAttribute("userAttributeName");
setTextField(user.getId().toString)

否则,您可以获取 cookie 并在代码中迭代以获取所需的属性。

public static String getCookieValue(String cookieName, HttpServletRequest request)
{
    String cookieVal = null;
    Cookie cookies[] = request.getCookies();
    if(null != cookies && StringUtils.isNotEmpty(cookieName))
    {
        for(Cookie cookie : cookies)
        {
            if(cookieName.equals(cookie.getName()))
            {
                cookieVal = cookie.getValue();
                break;
            }
        }
    }
    return cookieVal;
}

String userId = getCookieValue(cookieName, request);
setTextField(user.getId().toString);

您还可以使用 Jquery (javascript) 获取 cookie。此链接可能会有所帮助。

于 2012-07-16T07:19:23.503 回答