gpt4 book ai didi

java - 如何在Java中创建缓存来存储用户 session

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

我想在java中创建缓存来存储用户 session 。它类似于一个缓存,可以为每个用户存储例如 5 个元素。我需要某种java数据结构,它必须能够记住这些数据。到目前为止,我创建了这个 Java 代码:

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class SessionCache {

public SessionCache() {
}

/* Create object to store sessions */
private List<ActiveSessionsObj> dataList = new ArrayList<>();

public static class ActiveSessionsObj {
private int one;
private int two;
private int three;
private int four;
private int five;

private ActiveSessionsObj(int one, int two, int three, int four, int five) {
throw new UnsupportedOperationException("Not yet implemented");
}
}

public List<ActiveSessionsObj> addCache(int one, int two, int three, int four, int five){

dataList.add(new ActiveSessionsObj(
one,
two,
three,
four,
five));
return dataList;
}

}

我是java新手,我需要帮助如何向结构添加数据以及如何从结构中删除数据。我需要使用 key 来完成此操作。这可能吗?还是根据mu的需要有更合适的数据结构来存储数据?

最美好的祝愿

最佳答案

大概每个用户都有一个唯一的 ID,因此 Map 实现似乎是一个明智的选择,其中键是用户 ID,值为 ActiveSessionsObj:

Map<String, ActiveSessionsObj> cache =
new HashMap<String, ActiveSessionsObj>();

请参阅 Javadoc,了解如何从 Map 添加 (put()) 和删除 (remove()) 元素:

public void addCache(String user_id,int one,int two,int three,int four,int five)
{
// You may want to check if an entry already exists for a user,
// depends on logic in your application. Otherwise, this will
// replace any previous entry for 'user_id'.
cache.put(user_id, new ActiveSessionsObj(one, two, three, four, five));
}

关于java - 如何在Java中创建缓存来存储用户 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10396473/

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