java map数据存入内存中,用于判断key是否存在,便于处理下面的问题。

lgc8023 2014-02-20 01:49:17
现在有这样一个问题,web项目中不同的用户登录进行同一个操作时,为了避免一个用户进行重复性提交一个操作,需要将每个用户的唯一标识先存在内存中。我现在想的是弄一个全局变量map,存储用户的唯一标识,然后每来一次请求,我就判断这个标识在map中有没有,如果有的话,就返回false,否则进行下面的操作,操作完成之后把这个标识从map中去除。知道java不能直接操作内存,不知道这样的思路可行不,map中的数据会不会由于不同用户的请求而被覆盖掉?
...全文
1066 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
ay转身遇 2014-02-20
  • 打赏
  • 举报
回复
如果说用map,还是用hashmap更好一点。虽然重量级,但存储用户信息更加安全
lgc8023 2014-02-20
  • 打赏
  • 举报
回复
引用 11 楼 nieleifang 的回复:
思路可行,对map的维护需要多加考虑
都需要考虑那些呢
Defonds 2014-02-20
  • 打赏
  • 举报
回复
引用 12 楼 lgc8023 的回复:
引用 8 楼 defonds 的回复:
引用 7 楼 lgc8023 的回复:
引用 5 楼 defonds 的回复:
引用 2 楼 lgc8023 的回复:
引用 1 楼 defonds 的回复:
可行。只要 key 不一样就不会被覆盖掉。但是你还得自己去维护这个 map、维护在线用户。
在线用户还需要维护吗,还有map,都怎么个维护法?能说的清晰完整点吗
在线用户不维护,那你这个 map 岂不越来越大?
一个操作执行过程中存在map中,操作结束后接着把map中的标识remove掉不就行吗
可以。但是同一个用户,没有离线,下次再来操作你又要添加一遍?
呵呵,是的
那你这个操作挺频繁的
lgc8023 2014-02-20
  • 打赏
  • 举报
回复
引用 8 楼 defonds 的回复:
引用 7 楼 lgc8023 的回复:
引用 5 楼 defonds 的回复:
引用 2 楼 lgc8023 的回复:
引用 1 楼 defonds 的回复:
可行。只要 key 不一样就不会被覆盖掉。但是你还得自己去维护这个 map、维护在线用户。
在线用户还需要维护吗,还有map,都怎么个维护法?能说的清晰完整点吗
在线用户不维护,那你这个 map 岂不越来越大?
一个操作执行过程中存在map中,操作结束后接着把map中的标识remove掉不就行吗
可以。但是同一个用户,没有离线,下次再来操作你又要添加一遍?
呵呵,是的
蹭蹭一笑 2014-02-20
  • 打赏
  • 举报
回复
思路可行,对map的维护需要多加考虑
lgc8023 2014-02-20
  • 打赏
  • 举报
回复
引用 9 楼 dongzeviva 的回复:
引用 7 楼 lgc8023 的回复:
引用 5 楼 defonds 的回复:
引用 2 楼 lgc8023 的回复:
引用 1 楼 defonds 的回复:
可行。只要 key 不一样就不会被覆盖掉。但是你还得自己去维护这个 map、维护在线用户。
在线用户还需要维护吗,还有map,都怎么个维护法?能说的清晰完整点吗
在线用户不维护,那你这个 map 岂不越来越大?
一个操作执行过程中存在map中,操作结束后接着把map中的标识remove掉不就行吗
那你做的还有什么意义?用完了就删了,别人还是可以重复提交啊!
你没理解我的意思,我这个实现的目的是保证一个用户只能产生一个正在执行的操作,而不限制其他用户执行该操作。
  • 打赏
  • 举报
回复
引用 7 楼 lgc8023 的回复:
引用 5 楼 defonds 的回复:
引用 2 楼 lgc8023 的回复:
引用 1 楼 defonds 的回复:
可行。只要 key 不一样就不会被覆盖掉。但是你还得自己去维护这个 map、维护在线用户。
在线用户还需要维护吗,还有map,都怎么个维护法?能说的清晰完整点吗
在线用户不维护,那你这个 map 岂不越来越大?
一个操作执行过程中存在map中,操作结束后接着把map中的标识remove掉不就行吗
那你做的还有什么意义?用完了就删了,别人还是可以重复提交啊!
Defonds 2014-02-20
  • 打赏
  • 举报
回复
引用 7 楼 lgc8023 的回复:
引用 5 楼 defonds 的回复:
引用 2 楼 lgc8023 的回复:
引用 1 楼 defonds 的回复:
可行。只要 key 不一样就不会被覆盖掉。但是你还得自己去维护这个 map、维护在线用户。
在线用户还需要维护吗,还有map,都怎么个维护法?能说的清晰完整点吗
在线用户不维护,那你这个 map 岂不越来越大?
一个操作执行过程中存在map中,操作结束后接着把map中的标识remove掉不就行吗
可以。但是同一个用户,没有离线,下次再来操作你又要添加一遍?
lgc8023 2014-02-20
  • 打赏
  • 举报
回复
引用 5 楼 defonds 的回复:
引用 2 楼 lgc8023 的回复:
引用 1 楼 defonds 的回复:
可行。只要 key 不一样就不会被覆盖掉。但是你还得自己去维护这个 map、维护在线用户。
在线用户还需要维护吗,还有map,都怎么个维护法?能说的清晰完整点吗
在线用户不维护,那你这个 map 岂不越来越大?
一个操作执行过程中存在map中,操作结束后接着把map中的标识remove掉不就行吗
firein 2014-02-20
  • 打赏
  • 举报
回复
map线程安全吗?
Defonds 2014-02-20
  • 打赏
  • 举报
回复
引用 2 楼 lgc8023 的回复:
引用 1 楼 defonds 的回复:
可行。只要 key 不一样就不会被覆盖掉。但是你还得自己去维护这个 map、维护在线用户。
在线用户还需要维护吗,还有map,都怎么个维护法?能说的清晰完整点吗
在线用户不维护,那你这个 map 岂不越来越大?
tony4geek 2014-02-20
  • 打赏
  • 举报
回复
可以,按照思路做哦
  • 打赏
  • 举报
回复
先查询,后修改应该就没问题
lgc8023 2014-02-20
  • 打赏
  • 举报
回复
引用 1 楼 defonds 的回复:
可行。只要 key 不一样就不会被覆盖掉。但是你还得自己去维护这个 map、维护在线用户。
在线用户还需要维护吗,还有map,都怎么个维护法?能说的清晰完整点吗
Defonds 2014-02-20
  • 打赏
  • 举报
回复
可行。只要 key 不一样就不会被覆盖掉。但是你还得自己去维护这个 map、维护在线用户。

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧