spring session
在 intellij idea 中创建一个 spring boot 项目并使用 spring session 来管理会话,可以按照以下步骤进行:
1. 创建 spring boot 项目
打开 intellij idea 并选择 “new project”。
在左侧的菜单中选择 “spring initializr”。

配置项目的基本信息:
- group: com.dependencies
- artifact: spring-session
- name: spring-session
- type: maven
- language: java
- packaging: jar
- java version: 17
点击 “next”。
在 “dependencies” 页面,添加以下依赖:
- spring web - 用于创建web应用程序。
- spring session - 用于会话管理。
点击 “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. 运行项目
在 intellij idea 中,找到主应用程序类 springsessionapplication。
右键点击该类,并选择 “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 会话。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论