【问题标题】:spring-mvc + java +concurrencyspring-mvc + java +并发
【发布时间】:2016-04-26 10:23:34
【问题描述】:

我有一个问题,我制作了一个基于 spring mvc 的 Web 应用程序,其中多个用户想要同时访问我的应用程序以执行操作。

我使用了一些全局常量,我在其中为特定用户分配 ip、端口和其他信息,例如 CAConstant.IP, CAConstant.PORT 等。我在不同的类中使用这些常量来执行基于特定用户的操作。

问题是,当多个用户同时访问应用程序时,最后一个用户会覆盖前一个用户的全局内容,从而在最终报告中产生冲突(当我的主要功能未同步时)。

所以我的问题是如何解决这个问题,或者我们如何允许多个用户使用 java 中的线程同时访问同一个 Web 应用程序?

【问题讨论】:

  • 你说的是全局常量,其实是全局变量?将数据存储在会话中而不是全局变量中。

标签: java spring multithreading concurrency


【解决方案1】:

使用 HttpSession 存储每个用户的信息。

将信息放入会话中

request.getSession.setAttribute("CAConstantIp", ip_address);

从会话中获取属性

String ipAddress = request.getSession.getAttribute("CAConstantIp");

还可以查看HttpSession 的弹簧指南。

【讨论】:

    猜你喜欢
    • 2013-04-28
    • 1970-01-01
    • 2014-12-01
    • 1970-01-01
    • 2016-02-11
    • 2022-01-12
    • 2014-12-31
    • 2012-04-22
    • 1970-01-01
    相关资源
    最近更新 更多