gpt4 book ai didi

java - 使用 DAO 模式访问 Web session

转载 作者:行者123 更新时间:2023-12-01 15:15:55 24 4
gpt4 key购买 nike

我想使用 Dao pattern用于控制对Web Session的访问。

我的想法是使用一个 DAO 来控制 Session 中的所有元素,如果有人想要获取例如电子邮件,他必须写这样的内容:

    sessionDAO.getEmail();

    UserData userData = sessionDAO.getUserData();
userData.getEmail();

为了将电子邮件放入我想做的 session 中:

    public void setEmail(String email){
ServletRequestAttributes requestAttributes = (ServletRequestAttributes)RequestContextHolder.getRequestAttributes();
HttpSession session = requestAttributes.getRequest().getSession();
session.setAttribute(SessionDAO.EMAIL,email);
}

通过这种方式,我可以随时检查 session 中的值。我不希望任何人都可以这样做:

   request.setAttribute("email", "example@gmail.com");

因为例如在我的代码的其他部分中,有人可以重复代码,因为他不知道电子邮件已经在 session 中。

这里很好地使用了 DAO 模式吗?

最佳答案

我宁愿将此方法称为上下文,而不是DAO(执行上下文运行时上下文、< em>HTTP 上下文 - 你能想到的)。

JNDI 是使用类似的方法实现的。 Spring 有 ApplicationContext。类似这样的例子可能还有很多。

DAO 更多地致力于将 POJO 与其检索分开,并且可能会使将来阅读您代码的人(包括您自己)感到困惑。

但无论如何,总体想法还不错,我经常使用它。

关于java - 使用 DAO 模式访问 Web session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11619712/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com