gpt4 book ai didi

java - Spring 启动: Iterate and evaluate all (active) sessions

转载 作者:行者123 更新时间:2023-11-30 06:02:38 24 4
gpt4 key购买 nike

示例:我想将登录限制为一次登录五个桌面 session 和五个移动 session 。因此我为每个 session 添加了一个标志,例如

request.getSession().setAttribute("Session-Type", "mobile");

现在,当任何用户登录时,我想对所有 Activity 的移动/桌面 session 进行计数,并根据该计数允许/禁止登录。 我该如何实现这一目标?

我知道我可以使用 SessionRegistry访问校长和/或他们的 SessionInformation ,但不是实际的 session ...

编辑:我正在使用 Hazelcast 来存储 session ,如果这有帮助的话

最佳答案

仅使用 Hazelcast:

@Autowired
private HazelcastInstance hazelcastInstance;

// ...

// from org.springframework.session.hazelcast.HazelcastSessionRepository
final Collection<Session> sessions = (Collection) hazelcastInstance.getMap(HazelcastSessionRepository.DEFAULT_SESSION_MAP_NAME).values();
for(final Session session : sessions) {
System.out.println(session.getId() + ": " + session.getAttribute("Session-Type"));
}

关于java - Spring 启动: Iterate and evaluate all (active) sessions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51979688/

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