iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Spring session如何获取当前账户登录数
  • 692
分享到

Spring session如何获取当前账户登录数

2023-07-05 22:07:32 692人浏览 薄情痞子
摘要

今天小编给大家分享一下spring session如何获取当前账户登录数的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下

今天小编给大家分享一下spring session如何获取当前账户登录数的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

Spring session 获取当前账户登录数

一、登录校验成功时,向session加入关键信息,代码如下:

session.setAttribute(FindByIndexNameSessionRepository.PRINCIPAL_NAME_INDEX_NAME, userId);

二、获取当前session账户的登录数,及有多少个客户端使用了当前账户登录:

    @Autowired    private RedisOperationsSessionRepository sessionRepository;    public Integer fetchSameLoginNum(httpservletRequest request) {        int result = 0;        HttpSession session = request.getSession();        if (session != null) {            String userId = (String) session.getAttribute(FindByIndexNameSessionRepository.PRINCIPAL_NAME_INDEX_NAME);            if (StringUtils.isNotEmpty(userId)) {                Map<String, ? extends Session> nameAndIndexValue = sessionRepository                        .findByIndexNameAndIndexValue(FindByIndexNameSessionRepository.PRINCIPAL_NAME_INDEX_NAME, userId);                result = nameAndIndexValue.size();            }        }        return result;    }

补充:解决同一浏览器登录多个账户session共享问题

首先session是同一PC同一浏览器共享的.比如如下代码:

public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException    {        HttpSession hs = request.getSession();           //存入session        String user = request.getParameter("user");        hs.setAttribute("user", user);        response.sendRedirect("index.jsp");    }

解决办法1:限制同一浏览器多个账户登录,方法是根据key获取session的值 session.getAttribute(key),判断这个结果是不是空,不是空,就说明已登录。

解决方法2:不同帐户共用一个session,将信息以(key,value)形式放入session,然后所有的请求都加上userid参数,所有从session中取数据出来都通过getXXByUserId。这种实现对现有框架改动较大,而且不仅仅是放在session中的用户信息需要根据byuserid来提取而是所有的会话里面的信息都要byuserid的来弄。故不建议采取这种做法。

以上就是“Spring session如何获取当前账户登录数”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

--结束END--

本文标题: Spring session如何获取当前账户登录数

本文链接: https://www.lsjlt.com/news/355788.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Spring session如何获取当前账户登录数
    今天小编给大家分享一下Spring session如何获取当前账户登录数的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下...
    99+
    2023-07-05
  • Springsession获取当前账户登录数的实例代码
    Spring session 获取当前账户登录数 一、登录校验成功时,向session加入关键信息,代码如下: session.setAttribute(FindByIndexNam...
    99+
    2023-05-14
    Spring session获取当前账户登录数 Spring session获取当前登录数
  • php怎么获取当前用户登录id
    在 PHP 中,可以使用 $_SESSION 变量来存储和获取用户登录信息。首先,在用户登录成功时,将用户的 id 存储到 $_SE...
    99+
    2023-10-22
    php
  • 详解.NET6如何实现获取当前登录用户信息
    目录需求目标原理和思路实现创建当前用户获取接口实现接口功能使用功能验证总结需求 在前面的文章里使用.NET 6开发TodoList应用之领域实体创建原理和思路,我们留了一个...
    99+
    2024-04-02
  • 使用HandlerMethodArgumentResolver用于统一获取当前登录用户
    目录一、最原始直接二、AOP三、拦截器+方法参数解析器3.1 自定义权限拦截器3.2 自定义参数注解3.3 自定义方法参数解析器 3.4 配置MVC总结环境:SpringB...
    99+
    2022-12-28
    HandlerMethodArgumentResolver 获取当前登录用户 HandlerMethodArgumentResolver使用
  • linux如何查看当前登录用户
    这篇文章给大家分享的是有关linux如何查看当前登录用户的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。什么是Linux系统Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于POSIX的多用户、多任...
    99+
    2023-06-15
  • win11如何取消登录账户
    这篇文章主要介绍“win11如何取消登录账户”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“win11如何取消登录账户”文章能帮助大家解决问题。首先我们在主界面下方点击“放大镜”按钮打开搜索,输入“n...
    99+
    2023-07-01
  • python获取当前用户的主目录路径
    python获取当前用户的主目录路径, 示例代码如下: #! /usr/bin/python # -*- coding: utf-8 -*- import os print os.environ['HOME'] print o...
    99+
    2023-01-31
    路径 主目录 用户
  • mysql如何查询当前登录的用户
    本文小编为大家详细介绍“mysql如何查询当前登录的用户”,内容详细,步骤清晰,细节处理妥当,希望这篇“mysql如何查询当前登录的用户”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识...
    99+
    2024-04-02
  • android如何获取当前activity
    要获取当前activity,可以使用以下方式:1. 在Activity类中,可以使用`this`关键字来获取当前activity的实...
    99+
    2023-08-12
    android activity
  • 如何获取微信小程序登录的session
    这篇文章主要为大家展示了“如何获取微信小程序登录的session”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何获取微信小程序登录的session”这篇文章吧...
    99+
    2024-04-02
  • 在Ubuntu中如何查看当前登录用户
    您可以使用以下命令来查看当前登录用户: whoami 此命令将显示当前登录用户的用户名。您还可以使用以下命令来查看当前用户的详细信...
    99+
    2024-03-13
    Ubuntu
  • Spring如何获取当前类在容器中的beanname
    这篇文章主要介绍“Spring如何获取当前类在容器中的beanname”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Spring如何获取当前类在容器中的beanname”文章能帮助大家解决问题。如下...
    99+
    2023-07-02
  • win10如何取消账户密码登录
    本文小编为大家详细介绍“win10如何取消账户密码登录”,内容详细,步骤清晰,细节处理妥当,希望这篇“win10如何取消账户密码登录”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。win10取消账户密码登录的方法:...
    99+
    2023-06-30
  • 获取当前修改的行记录数据
    CO代码:                 //获取当前修改的行       &n...
    99+
    2024-04-02
  • mysql如何获取当前时间
    在MySQL中,可以使用以下函数来获取当前时间:1. NOW(): 返回当前日期和时间的值,以 'YYYY-MM-DD HH...
    99+
    2023-08-16
    mysql
  • html如何获取当前时间
    html中获取当前时间的方法:1、创建html文件;2、给新建文件添加html代码架构;3、使用div标签来显示获取当前时间的值;4、使用javascript中Date对象并通过new Date()获取当前时间即可。具体方法如下:在操作系统...
    99+
    2024-04-02
  • oracle如何获取当前时间
    在Oracle数据库中,可以使用SYSDATE函数来获取当前的日期和时间。SYSDATE函数返回当前日期和时间,包含时分秒。示例如下...
    99+
    2024-04-17
    oracle
  • android如何获取当前时间
    要获取当前时间,可以使用系统提供的Date类或Calendar类来获取。以下是使用Date类和Calendar类获取当前时间的示例代...
    99+
    2024-04-02
  • MySQL如何获取当前日期
    在MySQL中,可以使用以下函数来获取当前日期: 使用NOW()函数: SELECT NOW(); 使用CURRENT_DA...
    99+
    2024-04-09
    MySQL
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作