SpringBoot+MyBatis+Redis实现SSO单点登录系统(一)
SpringBoot+MyBatis+Redis实现SSO单点登录系统(一)
一、SSO系统概述
SSO英文全称Single Sign On,单点登录。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。它包括可以将这次主要的登录映射到其他应用中用于同一个用户的登录的机制。它是目前比较流行的企业业务整合的解决方案之一。
二、环境搭建
1、Spring Boot 项目搭建
项目框架搭建在这里一样不多说,网上有很多教程。所需的依赖:
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.1.RELEASE</version></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><start-class>cn.hzr0523.App</start-class><java.version>1.8</java.version><lombok.version>1.14.8</lombok.version><jedis.version>2.9.0</jedis.version><mybatis-plus>2.0.2</mybatis-plus></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-logging</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency><!--缺少此jar包,导致@Mapper注解无效--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.2.0</version></dependency><!-- https://mvnrepository.com/artifact/com.alibaba/druid --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.29</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.7</version></dependency><!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.41</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>${lombok.version}</version><scope>provided</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId></dependency><!--MyBatis Plus--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus</artifactId><version>2.0.2</version></dependency><!--模板引擎--><dependency><groupId>org.apache.velocity</groupId><artifactId>velocity</artifactId><version>1.7</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId><version>1.4.7.RELEASE</version></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>
2、Redis安装
(1)Redis在windows下的安装
下载地址:https://github.com/MSOpenTech/redis/releases。
下载好后,解压文件,进入文件夹,命令启动:
如果想方便的话,可以把 redis 的路径加到系统的环境变量里,这样就省得再输路径了,后面的那个 redis.windows.conf 可以省略,如果省略,会启用默认的。服务端启动好之后,不要关闭窗口,否则就访问不了了。
运行客户端,测试安装是否成功。
(2)Redis在Linux下的安装
从官网下载安装包,复制到Linux下,解压:
tar xzf redis-4.0.9.tar.gz --解压
在一开始安装时,遇到了几个问题,第一个就是gcc没有安装
yum install gcc --安装GC编译环境
但是依旧报错。。
使用此命令安装即可解决。
make MALLOC=libc
malloc的全称是memory allocation,中文叫动态内存分配,当无法知道内存具体位置的时候,想要绑定真正的内存空间,就需要用到动态的分配内存。
安装成功后,启动redis服务
./redis-server ../redis.conf
运行客户端,测试是否安装成功。
至此,redis在linux上已完成安装。
SpringBoot+MyBatis+Redis实现SSO单点登录系统(一)相关推荐
- SpringBoot+MyBatis+Redis实现SSO单点登录系统(二)
SpringBoot+MyBatis+Redis实现SSO单点登录系统(二) 三.代码 配置文件配置数据库,redis等相关的信息. # See http://docs.spring.io/sprin ...
- 互联网分布式微服务云平台规划分析--SSO单点登录系统
介绍 鸿鹄云架构[SSO单点登录系统]为所有微服务提供统一的用户认证服务,系统本身属于微服务模式,使用JWT+Redis分布式存储方案,确保不同微服务.系统之间的安全通讯和统一用户校验.认证.在整个服 ...
- SpringBoot 简单实现仿CAS单点登录系统
SpringBoot 简单实现仿CAS单点登录系统 新境界开源开源SSO项目介绍 新境界开源SSO项目实现原理大致如下: 新境界开源SSO项目登录流程介绍 新境界开源SSO项目授权登录流程介绍 新境界 ...
- sso单点登录系统(解决session共享)
场景:假设一个用户将自己的登录信息提交到后台,如果session保存的信息分布在多台机器上,并且不共享,那么可能导致用户的登录信息出现短暂的丢失,为什么这样讲,因为用户访问服务器中间还要经过负载均衡服 ...
- Shiro整合SSO单点登录系统
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/m0_37797991/article/ ...
- SSO单点登录系统的实战运用
通用介绍 单点登录系统,简称为 SSO,是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.任何SSO框架都需要创建统一的认 ...
- 手撕一套sso(单点登录)系统之原理篇1
在手撕之前,你首先要了解一些原理,我写的案例成品可以访问zauth,语言是Java8. 目录 1.关于Http 2.用户信息怎么存?存什么?存在哪? 2.1 使用前端存储技术Storage或index ...
- SpringBoot实现基础的sso单点登录
前言 本文借鉴学习了团团大佬的文章和源码 原文地址 想知道单点登录原理等理论可以移步大佬文章 代码及实现 本次学习基于session模拟了数据库查询和token权限认证 构建 准备三个服务器,这里用三 ...
- sso单点登录系统的理解
单点登录有两种方式,一种是跨域,一种是不跨域. 一:在不跨域的情况下, 只需要将cookie设置为顶域状态,即可以实现cookie的共享. 二:跨域登录 用户访问app系统,app系统是需要登录的,但 ...
最新文章
- linux下cd命令
- 2016年网络诉求:物联网+SDN+自动化
- Linux 简单打印日志(二)
- maven项目发布到tomcat里lib包没有发布的问题
- 引用js实现checkbox批量选中
- c通过位运算求绝对值_初中数学归类总结(四)有理数的乘除乘方及混合运算...
- python静态方法的作用_@staticmethod和@classmethod如何作用于python中的...
- 计算机二级python经典真题
- 无偏移谷歌瓦片地址_下载谷歌高清无偏移卫星地图
- 红帽linux命令符,红帽子Linux_命令全解.doc
- 让WordPress主题支持语言本地化(使用poedit软件实现中文翻译功能)
- 物联网技术实现农业自动化
- 量化java_用java做量化
- 图表示学习之时序的事件和节点动态
- pycharm安装与配置Pyqt5
- 洗牌算法具体指的是什么
- 华为5c_华为荣耀畅玩5C的CPU是什么?CPU主频是多少?
- 程式中檢查是否潤年的新方法
- xes java to c_5个最优秀的java和c#代码转换工具
- android textview 用html设置字体
热门文章
- TCP协议的部分解析(3)
- 高性能MySQL(第二版)第三章 架构优化和索引(上)——读书笔记
- squid 的配置详解 (转)--SeriesIII
- 从程序员到项目经理(六):程序员加油站 -- 懂电脑更要懂人脑
- s3c6410 nand初始化
- android 读写文件 简书,Android10 文件操作适配
- 快速入门MyBatis-Plus,看这一篇就够了。
- Linux查询端口是否被占用的四种方法
- Chrome保存mht网页文件的方法 – 无需任何插件,完美!
- spring 3.0.5+velocity tools 2.0