我们经常会遇到去一个网站,当你执行一个操作的时候需要登录
那么网站或者app是如何获知我们是否登录的呢?

今天介绍一个比较经典的方法 httpsession

Session在HttpServletRequest request

//serivce层//将之前mapper层的注入过来
@Autowried
private SysUserService sysusermapper;public Returndata login(Sysuser user,HttpServletRequest request){Returndata returndata = ReturnData.fail("登录失败");if(user==null){returndata=ReturnData.fail("非法调用");}else if(TextUtils.isEmpty(user.getUsername())){returndata=ReturnData.fail("用户名不能为空");}else if(TextUtils.isEmpty(user.getPassword())){returndata=ReturnData.fail("密码不能为空");}else{//数据库查询SysUser dbuser =sysusermapper.getUserByUsername(user.getUsername());if(dbuser==null){returndata=ReturnData.fail("数据库未查询到");}else if(!dbuser.getpassword().equals(user.getPassword())){returndata=ReturnData.fail("密码错误");}else{//注意这里把dbuser放进了session里面,以后就用session来鉴权request.getSession().setAttribute(Consts.SYS_USER_INFO,dbuser);returndata=ReturnData.fail("登录成功");}}
}

比如这样
如果从session中没有获取sysuser对象,说明就没有登录上。反之有这个对象,那就说明登录上了
现在还获取了这个用户的对象。

Controller层//把之前的服务注入过来
@Autowired
private SysUserSerice sysUserSerive;HttpSession  session = request.getSession();
SysUser sysuser = (SysUser) session.getAttribute(Consts.SYS_USER_INFO)
if(sysuser==null){//非登录
}else{//已登录
}

Session 像一个Map结构,有key 有value。
我们把从数据库查询过得对象存储到session里,从而判断你是否登陆过。
这个例子算是一个比较简单的应用案例。

Session鉴权【登录】相关推荐

  1. python接口自动化之cookie,session,token鉴权解决方案

    http协议:简单.快捷.无连接.无状态.多次请求之间是没有关联的,独立的. 一.cookie鉴权 1.什么是cookie? cookie是在服务器产生的存储在客户端的一小段文本信息,格式是字典,键值 ...

  2. mysql ip鉴权_网站登录鉴权的实现

    什么是网站鉴权,目的是什么? 一般来说,一个网站不可能只有一种操作权限.举个例子,可能存在未登录的操作权限,登录的操作权限,以及管理 员的操作权限等.网站鉴权的目的就是用户在进行操作前,对用户的身份进 ...

  3. 【登录及鉴权】-盘点那些主流的开源登录及权限认证框架 (上)

    登录和鉴权应该是一个完整的系统中几乎必不可少的部分,虽然现在已经有越来越多的框架帮我们简化了这部分工作量,大公司更是有自己专门的登录和权限控制系统,比如阿里的BUC和ACL,开发者仅需要通过简单的步骤 ...

  4. React + UmiJS: 实现简单登录鉴权

    在之前的文章Spring WebFlux (7): Springboot Security+jwt登录鉴权实现了后端的鉴权登录,只是通过postman进行了测试,本篇以此为基础通过reactjs和um ...

  5. Springboot系列之Shiro、JWT、Redis 进行认证鉴权

    Springboot系列之Shiro.JWT.Redis 进行认证鉴权 Shiro架构 Apache Shiro是一个轻量级的安全框架 Shiro可以非常容易的开发出足够好的应用,其不仅可以用在Jav ...

  6. seesion cookie鉴权 与 token鉴权

    1.鉴权:鉴权就是指验证用户是否有访问系统的权力--鉴定权限 2. cookie  session  token 会话标识 session ID (服务器端生成,发放给客户端,记录认证状态,sessi ...

  7. 软件测试 接口测试 接口鉴权 token鉴权 Mock Server 接口加解密 接口签名sign

    文章目录 1 接口鉴权 1.1 cookie鉴权 1.2 session鉴权 1.3 token鉴权 1.4 Postman的鉴权方式 2 Mock Server 3 接口加解密 3.1 加密方式 3 ...

  8. Web API接口鉴权方式

    一.什么是鉴权?为什么要鉴权 鉴权(authentication),也叫做认证,即验证用户是否拥有访问系统的权利. HTTP本身是无状态的请求,每次请求都是一次性的,并不会知道请求前后发生了什么.但在 ...

  9. API 鉴权插件上线!支持用户自定义鉴权插件

    0.4.0 版本更新主要围绕这几个方面: 分组独立的 UI,支持分组 API 鉴权 API 测试支持继承 API 鉴权 支持用户自定义鉴权插件,仅需部分配置即可发布鉴权插件 开始介绍功能之前,我想先和 ...

最新文章

  1. VS2005字符串资源不能识别转义字符
  2. 车牌识别算法_PC端车牌识别SDK融入好算法
  3. SharePoint 2010 与 SQL Server 2012 报表服务集成
  4. 从AK47到乌兹,这款控制器模块可以模拟不同物体体感
  5. Python学习笔记(六)
  6. Linux之Redis安装
  7. java打印三角形,菱形。任意边长大小
  8. The value of a feed cannot be a tf.Tensor object.
  9. linux下的svn搭建,Ubuntu 14.04 下搭建SVN服务器 svn://
  10. oracle 嵌套表 例子,什么是Oracle中的嵌套表对象?
  11. 服务器系统用哪个版本好,windows服务器系统哪个版本好用
  12. 滑动窗口协议如何实现流量控制
  13. Selenium WebDriver使用IE浏览器
  14. html空间进入动画界面,HTML5 / CSS3 Transform / Animation 示例页面
  15. 合宙ESP32S3 CameraWebServe 测试demo
  16. ubuntu下android开发安装手机驱动
  17. 801冠号大全及桃花荧光
  18. 连接打印服务器显示无合适驱动,Silex DS-510打印服务器驱动(解决DS-510打印机连接问题)V7.2.1 最新版...
  19. matlab mat文件转fcf,Matlab的FDATool设计滤波器导出
  20. oracle数据泵的学习

热门文章

  1. 二进制与、或、异或运算法则
  2. 米兔积木机器人电机是腿吗_如何评价小米新出的「米兔积木机器人」?
  3. LNMP架构安装及搭建Discuz论坛
  4. Python数据攻略-多种SQL数据仓库CRUD
  5. 7nm芯片在路上,AMD又倒逼英特尔?
  6. #Android笔记# 超级足球app 开发总结(二)—— SpannableString根据标记插入文字实现图文混排
  7. matlab大津法函数,matlab 大津阈值分割【相关词_ 大津法阈值分割matlab】
  8. 使用Nexus Repository 3的十二个理由
  9. 不同项目组织结构间的区别
  10. #Java 泛型#设计一个可以放整数和浮点数但不能放字符串的集合