【问题标题】:is there a way to share a single variable by all servlet classes in java有没有办法让java中的所有servlet类共享一个变量
【发布时间】:2009-02-25 09:29:43
【问题描述】:

我需要知道是否有办法通过两个 servlet 类更改单个变量的值。 在一个 servlet 中我需要使变量 =true,而在另一个 servlet 中我需要使变量 =false

【问题讨论】:

  • 请提供更多信息,说明您正在努力实现的目标,因为您可能走错了路。

标签: java servlets


【解决方案1】:

如果您想要整个网络应用程序的全局变量,这就是 ServletContext 中的属性的用途 - 请务必仔细阅读文档,以便您了解这些属性的“全局”程度。

如果您希望变量是每个用户单独的,但跨 servlet 是全局的,这就是 HttpSession 中的属性的用途。

【讨论】:

    【解决方案2】:

    如果您想存储它,您可以使用 HTTPSession,然后任何 servlet 都可以访问该变量。

    HttpSession session = request.getSession();
    session.setAttribute("hello", "test");
    

    http://www.exforsys.com/tutorials/jsp/jsp-session-object-methods.html

    看看那个页面,一些关于会话的基本信息。

    【讨论】:

    【解决方案3】:

    将数据粘贴到您的数据库(或其他持久存储)中。

    有应用程序上下文,但正如 Michael Borgwardt 在他的回答中指出的那样,这实际上并不是全局的。

    【讨论】:

      【解决方案4】:

      你到底想要什么?

      您可以使用单例并将该变量保留在那里,或者使用会话或请求或其他任何...

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-03
        • 2010-10-15
        • 2010-10-14
        • 2020-04-18
        • 1970-01-01
        相关资源
        最近更新 更多