Spring Boot Redis 存储 Session

Spring Boot Redis 存储 Session

第一步,编写pom.xml

	<!-- redis -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-redis</artifactId>
		</dependency>
		<!-- redis -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-cache</artifactId>
		</dependency>
		<!-- Redis Session -->
		<dependency>
			<groupId>org.springframework.session</groupId>
			<artifactId>spring-session-data-redis</artifactId>
		</dependency>
		<!-- Redis Session -->

 第二步,创建配置文件类    RedisSessionConfig.java

package com.example.demo.config;


import org.springframework.context.annotation.Configuration;
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;

@Configuration
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 86400 * 30, redisNamespace = "spring:session:demo")
public class RedisSessionConfig {
}

第三步,配置application.yml

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/posystem?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
    username: root
    password:
  jpa:
    database: MYSQL
    show-sql: true

    hibernate:
      ddl-auto: update
      naming-strategy: org.hibernate.cfg.ImprovedNamingStrategy
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQL5Dialect
  redis:
    ## Redis数据库索引(默认为0)
    database: 0
    ## Redis服务器地址
    host: 127.0.0.1
    ## Redis服务器连接端口
    port: 6379
    ## Redis服务器连接密码(默认为空)
    password:
    jedis:
      pool:
        ## 连接池最大连接数(使用负值表示没有限制)
        #spring.redis.pool.max-active=8
        max-active: 8
        ## 连接池最大阻塞等待时间(使用负值表示没有限制)
        #spring.redis.pool.max-wait=-1
        max-wait: -1
        ## 连接池中的最大空闲连接
        #spring.redis.pool.max-idle=8
        max-idle: 8
        ## 连接池中的最小空闲连接
        #spring.redis.pool.min-idle=0
        min-idle: 0
    ## 连接超时时间(毫秒)
    timeout: 1200
server:
  http2:
    enabled: true
  compression:
    enabled: true
    mime-types: text/html,text/xml,text/plain,text/css,text/javascript,application/javascript,application/json
    min-response-size: 1024
  error:
    include-exception: true
    include-stacktrace: on-trace-param
    path: /error
    whitelabel:
      enabled: true
  port: 9011
  servlet:
    context-path: /
    session:
      timeout: 604800

第四步,编写控制器

    @Autowired
    HttpSession session;

    @GetMapping("redisSession")
    public void  redisSession()
    {
        Map<String,Object> SetData = new HashMap<>();
        SetData.put("admin_id",1);
        SetData.put("admin_name","超级管理员");

        //设置session
        session.setAttribute("adminInfo", SetData);

        //获取sesion
        Map<String,Object> GetData= (Map<String,Object>)session.getAttribute("adminInfo");

        System.out.println("获取admin_id="+GetData.get("admin_id"));
        System.out.println("获取admin_name="+GetData.get("admin_name"));

    }

第五步,输出查看

展开阅读全文

SpringBoot2.0前后端分离开发之用户身份认证实战 (后端实现)

08-07
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值