zoukankan      html  css  js  c++  java
  • springSession

    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);
        }    
    }



  • 相关阅读:
    linux的一般命令------附加
    linux(4)----------ssh config详解
    linux(3)--------SSH工具的安装使用
    linux(2)-----新装linux配置
    linux(1)------vmvear虚拟机安装linux
    (3)hadoop单节点配置
    (2)hadoop之-----配置免密码登录
    (1)hadoop之----linux配置jdk环境
    BZOJ 1037 生日聚会(神DP)
    BZOJ 1046 上升序列(LIS变形)
  • 原文地址:https://www.cnblogs.com/zgxz/p/7792460.html
Copyright © 2011-2022 走看看