文档章节

崛起于Springboot2.X + session共享(50)

木九天
 木九天
发布于 09/04 13:28
字数 358
阅读 123
收藏 2

《SpringBoot2.X心法总纲》

      简介:session共享是不同项目共享一个资源,譬如单点登录。

1、pom依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

<dependency>
    <groupId>org.springframework.session</groupId>
    <artifactId>spring-session-data-redis</artifactId>
</dependency>

2、application.properties

    默认选择的是redis库15。

server.port=8082

spring.redis.database=15
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.password=
spring.redis.timeout=10000ms

3、开启session缓存

      在启动类添加下面注解EnableRedisHttpSession。

@SpringBootApplication
@EnableRedisHttpSession
public class DockerApplication {

    public static void main(String[] args) {
        SpringApplication.run(DockerApplication.class, args);
    }
}

4、Controller

@Controller
public class FirstController {


    @GetMapping(value = "/session")
    @ResponseBody
    public void session(HttpServletRequest request){
        request.getSession().setAttribute("name",request.getRequestURL());
    }

    @GetMapping(value = "/gainSession")
    @ResponseBody
    public void gainSession(HttpServletRequest request){
        String name = request.getSession().getAttribute("name").toString();
        System.out.println(name);
    }
 }

5、测试

      启动项目,运行 localhost:8082/session,这个时候你会发现redis库15中会有相关session记录,过期时间是1800(默认的,你可以在代码中设置)

     

    所以你调用 http://localhost:8082/gainSession 结果如下:

    

6、更换端口号8083

server.port=8083

      给项目更换端口号意味着变成了另外一个项目,这样在重新调用http://localhost:8083/gainSession的时候,看看会不会得到session。

      结果也是得到相同的结果,所以就表明我们可以通过这个方式实现单点登录,不过前提还是需要所有的项目使用共同的redis库,毕竟session是存到了redis中。 

© 著作权归作者所有

木九天

木九天

粉丝 217
博文 255
码字总数 194330
作品 0
海淀
程序员
私信 提问
崛起于Springboot2.X + Activiti5.22(42)

《SpringBoot2.X心法总纲》 (本篇博客已于2019-08-28优化更新) 声明:该博客主要是Springboot1.X和Springboot2.X集成Activiti5.22版本,并说一下两个版本的搭建不同的地方 技术:Springboo...

木九天
2018/12/17
2.5K
2
崛起于Springboot2.X + 100秒jar部署(19)

《SpringBoot2.X心法总纲》 序言:和打包war方式不同,如果你看过我上一篇:SpringBoot2.X打包war,jar会更简单。 1、pom.xml确定是jar <packaging>jar</packaging> 2、IDEA右侧,点击Maven...

木九天
2018/07/18
548
0
jeesuite-libs 1.3.1 发布,新增轻量级安全模块 jeesuite-security

简介 jeesuite-libs分布式架构开发套件。包括缓存(一二级缓存、自动缓存管理)、队列、分布式定时任务、文件服务(七牛、阿里云OSS)、日志、搜索、代码生成、配置中心、安全认证、分布式锁、分...

vakinge
2018/12/17
1K
3
崛起于Springboot2.X + Actuator监控(59)

《SpringBoot2.X心法总纲》 提前声明:这篇博客讲的内容没有看点,写它是为了后面的Springcloud相关技术做铺垫。 1、pom依赖 <dependency> </dependency> 2、application.properties server...

木九天
11/26
66
0
崛起于Springboot2.X + freemaker(24)

《SpringBoot2.X心法总纲》 (本篇博客已于2019-08-28优化更新) 1、pom <dependency> </dependency> 2、application.yml spring:freemarker: profiles: 如果你使用的是ftl后缀,那么更改suf......

木九天
2018/07/19
692
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 不要在领导修风扇的时候打开电扇

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @巴拉迪维 :《Whats Up》 主唱妹子 Lina Perry 的嗓音实在太有力了,收放自如的自信才能唱出这么优秀的歌吧!#今日歌曲推荐# 《Whats Up》-...

小小编辑
今天
7
0
SpringBoot集成Elasticsearch并进行增删改查操作

一、创建工程 使用IntelliJ创建SpringBoot工程 SpringBoot版本为2.0.4 ElasticSearch为5.6.10 删掉蓝框中的文件(如上) 最后我们的目录结构(如下) 下面pom文件主要修改的是把spring boot从Int...

一字见心
今天
5
0
x001-版本介绍

python版本介绍 目前有2 和 3 有很多企业用的代码是2版本,随着技术的发展,以后用3的会成为大趋势 python3的安装 yum -y install wget gcc zlib-devel bzip2-devel openssl-devel ncurses-d...

侠客行之石头
今天
5
0
聊聊rocketmq的TransientStorePool

序 本文主要研究一下rocketmq的TransientStorePool TransientStorePool rocketmq-all-4.6.0-source-release/store/src/main/java/org/apache/rocketmq/store/TransientStorePool.java publi......

go4it
昨天
6
0
笔记

场外借贷, 质押 ,托管, 永续合约. 场外借贷,n签合同. 新功能 证券交易组负责中信证券机构及个人投资交易相关系统,服务机构及个人投资客户, 涉及到两融、期权、 期货、做市等境内境外创新业...

MtrS
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部