wyw020828 2024-03-11 23:55 采纳率: 100%
浏览 5
已结题

springsession和redis实现单点登录

为什么我导入相关依赖之后没有spring.session.store-type这个属性,我使用的springboot3

  • 写回答

5条回答 默认 最新

  • shandongwill 大数据领域新星创作者 2024-03-12 08:12
    关注

    在 Spring Boot 2.x 版本中,spring.session.store-type 属性是用来指定会话存储类型的,比如 redisjdbc 等。然而,在 Spring Boot 3.x 中,这个属性已经被移除了,因为 Spring Session 的配置方式已经有所变化。

    Spring Boot 3.x 对 Spring Session 的支持进行了简化,现在主要依赖于自动配置来配置你的会话存储。例如,如果你将 Redis 作为会话存储,你需要添加对应的 Spring Session 和 Spring Data Redis 的依赖,然后 Spring Boot 的自动配置机制会自动为你配置好 Redis 作为会话存储。

    以下是基于 Spring Boot 3.x 使用 Redis 实现单点登录的基本步骤:

    1. 添加依赖:

    在你的 pom.xml 文件中添加 Spring Session Data Redis 和 Spring Boot Data Redis 的依赖。

    <dependencies>
        <!-- Spring Session Data Redis -->
        <dependency>
            <groupId>org.springframework.session</groupId>
            <artifactId>spring-session-data-redis</artifactId>
        </dependency>
        
        <!-- Spring Boot Data Redis -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        
        <!-- 其他依赖 -->
    </dependencies>
    
    1. 配置 Redis:

    application.propertiesapplication.yml 文件中配置 Redis 服务器的连接信息。

    # application.properties 示例
    spring.redis.host=localhost
    spring.redis.port=6379
    

    或者 YAML 格式:

    # application.yml 示例
    spring:
      redis:
        host: localhost
        port: 6379
    
    1. 启用 Spring Session:

    通常,你不需要显式启用 Spring Session,因为 Spring Boot 的自动配置会为你处理这部分。但是,如果你需要自定义配置,你可以创建一个配置类并添加 @EnableRedisHttpSession 注解(尽管在 Spring Boot 3.x 中,这通常不是必需的)。

    import org.springframework.context.annotation.Configuration;
    import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;
    
    @Configuration
    @EnableRedisHttpSession
    public class SessionConfig {
        // 可以定义你的自定义配置(如果需要的话)
    }
    

    在 Spring Boot 3.x 中,你通常不需要上面的配置类,因为 Spring Boot 的自动配置会为你做这些工作。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 3月20日
  • 已采纳回答 3月12日
  • 创建了问题 3月11日

悬赏问题

  • ¥15 yolov5目标检测并显示目标出现的时间或视频帧
  • ¥15 电视版的优酷可以设置电影连续播放吗?
  • ¥50 复现论文;matlab代码编写
  • ¥30 echarts 3d地图怎么实现一进来页面散点数据和卡片一起轮播
  • ¥15 数字图像的降噪滤波增强
  • ¥15 心碎了,为啥我的神经网络训练的时候第二个批次反向传播会报错呀,第一个批次都没有问题
  • ¥15 MSR2680-XS路由器频繁卡顿问题
  • ¥15 VB6可以成功读取的文件,用C#读不了
  • ¥15 如何使用micpyhon解析Modbus RTU返回指定站号的湿度值,并确保正确?
  • ¥15 C++ 句柄后台鼠标拖动如何实现