博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
springSession
阅读量:6937 次
发布时间:2019-06-27

本文共 1157 字,大约阅读时间需要 3 分钟。

session 会话共享

第一种: 第一种是使用容器扩展来实现,比如基于Tomcat的tomcat-redis-session-manager插件,基于Jetty的jetty-session-redis插件;这个方案的好处是对项目来说是透明的,无需改动代码,但是由于过于依赖容器,一旦容器升级或者更换意味着又得从新来过;
第二种: 第二种是自己写一套Session会话管理的工具类,在需要使用会话的时候都从自己的工具类中获取,而工具类后端存储可以放到Redis中。这个方案灵活性很好,但开发需要一些额外的时间。
第三种: 第三种是使用框架的会话管理工具,也就是我们要介绍的spring-session,可以理解是替换了Servlet那一套会话管理,既不依赖容器,又不需要改动代码,并且是使用spring-data-redis连接和操作redis,可以说是非常完美的解决方案
看官方文档最详细
基于XML的HttpSession示例
连接到Redis  然后创建RedisHttpSessionConfiguration这个bean 中配置springSessionRepositoryFilter这个过滤器
基于注解的HttpSession 示例
编写一个类并注解为@EnableRedisHttpSession,在配置类的方法中配置@bean
编写一个servlet容器初始化类
@EnableRedisHttpSession
public class SpringSessionConfig {
    
    @Bean
    public JedisConnectionFactory connectionFactory(){
        JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory();
        jedisConnectionFactory.setHostName("192.168.119.128");
        jedisConnectionFactory.setPort(6379);
        jedisConnectionFactory.setPassword("123456");
        return jedisConnectionFactory;        
    }
}
public class ServletInitializer extends AbstractHttpSessionApplicationInitializer {
    public ServletInitializer() {
        super(SpringSessionConfig.class);
    }    
}

转载于:https://www.cnblogs.com/zgxz/p/7792460.html

你可能感兴趣的文章
js实现两种实用的排序算法——冒泡、快速排序
查看>>
使用vuejs做一个todolist
查看>>
Lambda表达式
查看>>
appium for windows 环境搭建
查看>>
POJ 3074 Sudoku DLX精确覆盖
查看>>
Android NDK学习(三):Hello World
查看>>
Nginx日志过滤 使用ngx_log_if不记录特定日志
查看>>
Android 主界面长按创建快捷方式
查看>>
R 语言消除pdf图片的空白
查看>>
C语言之文件操作06——写数据到文本文件遇0停止
查看>>
ASP.NET获取客户端IP/用户名等信息
查看>>
怎样清空文件上传控件里的选定文件(路径)
查看>>
url转义
查看>>
畅通project
查看>>
jsp 传值jsp 数据库 乱码解决的攻略 全套
查看>>
SpringCloud的服务注册中心(二)注册中心服务端和两个微服务应用客户端
查看>>
javaScript 设计模式之中介者模式示例
查看>>
classes目录中没有class文件的一个原因
查看>>
微信公众平台开发 一 账号类别与申请
查看>>
取指定的字符串,字符串里面有汉字和字母
查看>>