# task6 **Repository Path**: fffsssa/task6 ## Basic Information - **Project Name**: task6 - **Description**: 使用Spring Boot + Caffeine,实现用户信息查询的缓存,观察缓存命中与失效行为。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-18 - **Last Updated**: 2026-05-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Spring Boot + Caffeine 缓存演示项目 本项目实现了基于Spring Boot和Caffeine的用户信息查询缓存功能,满足以下要求: ## 功能特性 - 使用Spring Boot 2.7.14框架 - 集成Caffeine本地缓存 - 提供RESTful用户查询接口 - 使用H2内存数据库存储用户信息 - 实现缓存命中与失效行为观察 ## 技术栈 - Spring Boot 2.7.14 - Caffeine缓存 - Spring Data JPA - H2数据库 - Java 11 ## 缓存配置 - 缓存最大容量:100条记录 - 缓存过期时间:10秒 - 支持按ID和邮箱查询的缓存 ## API接口 - `GET /api/users/{id}` - 根据ID获取用户 - `GET /api/users/email/{email}` - 根据邮箱获取用户 - `POST /api/users` - 创建用户 - `GET /api/users` - 获取所有用户 - `DELETE /api/users/{id}` - 删除用户 ## 缓存行为验证 通过日志可以观察到: 1. 首次查询会访问数据库 2. 相同查询会命中缓存(无数据库访问日志) 3. 10秒后缓存过期,再次查询会重新访问数据库 ## 运行项目 ```bash mvn spring-boot:run ``` ## 访问H2控制台 - H2控制台地址:http://localhost:8080/h2-console - 数据库URL:jdbc:h2:mem:testdb ## 运行测试 ```bash mvn test ```