SpringBoot 依赖之Spring Session

Spring Session

在 IntelliJ IDEA 中创建一个 Spring Boot 项目并使用 Spring Session 来管理会话,可以按照以下步骤进行:

1. 创建 Spring Boot 项目

  1. 打开 IntelliJ IDEA 并选择 “New Project”

  2. 在左侧的菜单中选择 “Spring Initializr”

spring Initialiazr

  1. 配置项目的基本信息:

    • Group: com.dependencies
    • Artifact: spring-session
    • Name: spring-session
    • Type: Maven
    • Language: Java
    • Packaging: Jar
    • Java Version: 17
  2. 点击 “Next”

  3. “Dependencies” 页面,添加以下依赖:

    • Spring Web - 用于创建Web应用程序。
    • Spring Session - 用于会话管理。
  4. 点击 “Next”,然后点击 “Finish” 来创建项目。

在这里插入图片描述

2. 配置项目的依赖

IDEA 会自动生成一个 pom.xml 文件并添加你选择的依赖。确保 pom.xml 包含以下依赖:

<dependencies>
    <!-- Spring Boot Starter Web -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <!-- Spring Session Core -->
    <dependency>
        <groupId>org.springframework.session</groupId>
        <artifactId>spring-session-core</artifactId>
    </dependency>
</dependencies>

3. 配置 Spring Session

application.properties 文件中配置会话的过期时间和其他属性:

配置文件作为项目后期扩展使用,单纯调试依赖的可用性,也可以不用配置以下参数。

# 设置会话超时时间(以秒为单位)
server.servlet.session.timeout=1800

# 设置会话Cookie名称
server.servlet.session.cookie.name=MYSESSIONID

# 设置会话Cookie路径
server.servlet.session.cookie.path=/

# 设置会话Cookie的HttpOnly属性
server.servlet.session.cookie.http-only=true

# 设置会话Cookie的Secure属性
server.servlet.session.cookie.secure=true

4. 创建控制器

创建一个控制器类来测试会话管理:

package com.dependencies.springsession.controller;

import jakarta.servlet.http.HttpSession;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.UUID;

/**
 * @author zhizhou   2024/7/24 23:17
 */
@RestController
@RequestMapping("/session")
public class SessionController {

    @GetMapping("/create")
    public String createSession(HttpSession session) {
        String sessionId = UUID.randomUUID().toString();
        session.setAttribute("sessionId", sessionId);
        return "Session created with ID: " + sessionId;
    }

    @GetMapping("/get")
    public String getSession(HttpSession session) {
        String sessionId = (String) session.getAttribute("sessionId");
        return "Session ID: " + sessionId;
    }
}

5. 创建主应用程序类

创建主应用程序类并注解 @SpringBootApplication

package com.dependencies.springsession;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringSessionApplication {
    
    public static void main(String[] args) {
        SpringApplication.run(SpringSessionApplication.class, args);
    }
    
}

6. 运行项目

  1. 在 IntelliJ IDEA 中,找到主应用程序类 SpringSessionApplication。

  2. 右键点击该类,并选择 “Run ‘SpringSessionApplication’” 来启动项目。

运行实例 在这里插入图片描述

7. 测试会话管理

启动 Spring Boot 应用程序后,默认端口8080,你可以访问以下URL来测试会话管理功能:

  • 创建会话:http://localhost:8080/session/create
  • 获取会话:http://localhost:8080/session/get

在访问 /session/create 时,会生成一个新的会话ID并存储在会话中。访问 /session/get 时,会返回存储在会话中的会话ID。

如图所示:
在这里插入图片描述

总结

通过以上步骤,你在 IntelliJ IDEA 中创建了一个 Spring Boot 项目,添加了 Spring Session 依赖,并配置了会话的管理和属性。通过简单的控制器类,你可以测试会话的创建和获取功能。这些步骤可以帮助你快速上手使用 Spring Session 来管理 HTTP 会话。

  • 15
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值