java1234开源博客系统
博客信息

springboot2实现redis session存储

发布时间:『 2020-01-14 23:41』  博客类别:Nginx  阅读(2847) 评论(0)

springboot2实现redis session存储


第一步:

引入依赖

<dependency>

    <groupId>org.springframework.session</groupId>

    <artifactId>spring-session-data-redis</artifactId>

</dependency>

 

<dependency>

    <groupId>redis.clients</groupId>

    <artifactId>jedis</artifactId>

</dependency>

 

<dependency>

    <groupId>io.lettuce</groupId>

    <artifactId>lettuce-core</artifactId>

</dependency>

 

第二步:application.yml配置

server:

  port: 8888

  servlet:

    context-path: /

  tomcat:

    uri-encoding: utf-8

 

spring:

  session:

    store-type: redis #指定redis实现spring session

    timeout: PT1H # Session 过期时间, PT开头  ‘D’ – 天   ‘H’ – 小时  ‘M’ – 分钟 ‘S’ – 秒 

    redis:

      flush-mode: on_save # Sessions 刷新模式  on_save http response为committed才提交 immediate 立即提交

      namespace: java1234  # session 存储命名空间

  redis:

    host: 172.17.0.3

    port: 6379

    password:

    lettuce:

      pool:

        max-active: 8  # 连接池最大连接数(使用负值表示没有限制)

        max-wait: -1  # 连接池最大阻塞等待时间(使用负值表示没有限制)

        max-idle: 8  # 连接池中的最大空闲连接

        min-idle: 0  # 连接池中的最小空闲连接

      shutdown-timeout: 100  # 连接超时时间(毫秒)

 

第三步:启动类加

@EnableRedisHttpSession

 

第四步:核心代码编写

@PostMapping(value = "/login")

public ModelAndView login (HttpSession session, User user){

    ModelAndView mav=new ModelAndView();

    if("java1234".equals(user.getUsername())&&"123456".equals(user.getPassword())){

         session.setAttribute("currentUser",user);

         mav.setViewName("main");

    }else{

         mav.addObject("errorInfo","用户名或者密码错误!");

         mav.setViewName("login");

    }

    return mav;

}

 

我们直接通过HttpSession设置 即可把session存到redis中去;

 

关键字:   无
关注Java1234微信公众号
博主信息
Java1234_小锋
(知识改变命运,技术改变世界)
Powered by Java1234 V3.0 Copyright © 2012-2016 Java知识分享网 版权所有