SpringBoot中如何配置实现跨应用Session共享?
- 内容介绍
- 文章标签
- 相关推荐
本文共计936个文字,预计阅读时间需要4分钟。
HttpSession 是通过 Servlet 容器创建并管理的,创建成功后将在内存中保存。为解决 session 共享问题,这里将使用 Redis 来存储 session。以下是创建项目和添加相关 Maven 配置的步骤:
1. 创建项目: - 使用 IDE 或命令行创建一个新的 Java Web 项目。
2. 添加 POM 文件: 在项目的根目录下创建 `pom.xml` 文件,并添加以下内容:
xml 4.0.0
com.example session-sharing-project 1.0-SNAPSHOT war
UTF-8
javax.servlet javax.servlet-api 4.0.1 provided
org.springframework.boot spring-boot-starter-data-redis 2.5.5
org.springframework.boot spring-boot-starter-web 2.5.5
org.apache.maven.plugins maven-compiler-plugin 3.8.1 1.8 1.8
3. 配置 Redis: 在 `application.properties` 或 `application.yml` 文件中配置 Redis 连接信息:
propertiesapplication.propertiesspring.redis.host=localhostspring.redis.port=6379
或
yamlapplication.ymlspring: redis: host: localhost port: 6379
这样,您就完成了项目的创建和 Maven 配置,可以开始实现 session 共享功能了。
HttpSession,是通过Servlet容器创建并进行管理的,创建成功以后将会保存在内存中,这里将会使用Redis解决session共享的问题。
创建项目
添加pom
添加相关的maven
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="maven.apache.org/POM/4.0.0" xmlns:xsi="www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="maven.apache.org/POM/4.0.0 maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.1.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.example</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>demo</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <!-- mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> <version>2.3.1.RELEASE</version> </dependency> <!-- mvnrepository.com/artifact/io.lettuce/lettuce-core --> <dependency> <groupId>io.lettuce</groupId> <artifactId>lettuce-core</artifactId> <version>6.0.0.M1</version> </dependency> <!-- mvnrepository.com/artifact/redis.clients/jedis --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>3.3.0</version> </dependency> <!-- mvnrepository.com/artifact/org.springframework.session/spring-session-data-redis --> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> <version>2.3.0.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
配置redis连接
配置redis连接
spring: redis: database: 0 host: 106.53.115.12 port: 6379 password: 12345678 jedis: pool: max-active: 8 max-idle: 8 max-wait: -1ms min-idle: 0
创建Controller用来执行测试操作
package com.example.demo; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; import javax.servlet.sang.com; proxy_redirect default; } }
请求分发
保存数据
获取数据
以上就是SpringBoot 如何实现Session共享的详细内容,更多关于SpringBoot 实现Session共享的资料请关注易盾网络其它相关文章!
本文共计936个文字,预计阅读时间需要4分钟。
HttpSession 是通过 Servlet 容器创建并管理的,创建成功后将在内存中保存。为解决 session 共享问题,这里将使用 Redis 来存储 session。以下是创建项目和添加相关 Maven 配置的步骤:
1. 创建项目: - 使用 IDE 或命令行创建一个新的 Java Web 项目。
2. 添加 POM 文件: 在项目的根目录下创建 `pom.xml` 文件,并添加以下内容:
xml 4.0.0
com.example session-sharing-project 1.0-SNAPSHOT war
UTF-8
javax.servlet javax.servlet-api 4.0.1 provided
org.springframework.boot spring-boot-starter-data-redis 2.5.5
org.springframework.boot spring-boot-starter-web 2.5.5
org.apache.maven.plugins maven-compiler-plugin 3.8.1 1.8 1.8
3. 配置 Redis: 在 `application.properties` 或 `application.yml` 文件中配置 Redis 连接信息:
propertiesapplication.propertiesspring.redis.host=localhostspring.redis.port=6379
或
yamlapplication.ymlspring: redis: host: localhost port: 6379
这样,您就完成了项目的创建和 Maven 配置,可以开始实现 session 共享功能了。
HttpSession,是通过Servlet容器创建并进行管理的,创建成功以后将会保存在内存中,这里将会使用Redis解决session共享的问题。
创建项目
添加pom
添加相关的maven
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="maven.apache.org/POM/4.0.0" xmlns:xsi="www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="maven.apache.org/POM/4.0.0 maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.1.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.example</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>demo</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <!-- mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> <version>2.3.1.RELEASE</version> </dependency> <!-- mvnrepository.com/artifact/io.lettuce/lettuce-core --> <dependency> <groupId>io.lettuce</groupId> <artifactId>lettuce-core</artifactId> <version>6.0.0.M1</version> </dependency> <!-- mvnrepository.com/artifact/redis.clients/jedis --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>3.3.0</version> </dependency> <!-- mvnrepository.com/artifact/org.springframework.session/spring-session-data-redis --> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> <version>2.3.0.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
配置redis连接
配置redis连接
spring: redis: database: 0 host: 106.53.115.12 port: 6379 password: 12345678 jedis: pool: max-active: 8 max-idle: 8 max-wait: -1ms min-idle: 0
创建Controller用来执行测试操作
package com.example.demo; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; import javax.servlet.sang.com; proxy_redirect default; } }
请求分发
保存数据
获取数据
以上就是SpringBoot 如何实现Session共享的详细内容,更多关于SpringBoot 实现Session共享的资料请关注易盾网络其它相关文章!

