feat(cache): 添加 Caffeine缓存支持并优化日志处理

- 在应用配置中添加 Caffeine 缓存配置
- 新增 CaffeineConfig 类用于缓存管理
- 在 Log 实体中添加 userAgent 字段保存原始用户代理字符串
- 优化 LogAspect 中的用户代理解析逻辑,增加缓存支持
- 更新数据库表结构,在 log 表中添加 user_agent 列
This commit is contained in:
Theo
2025-02-10 10:21:39 +08:00
parent 8caf20a455
commit cb8a2c4f41
9 changed files with 97 additions and 6 deletions

View File

@@ -0,0 +1,37 @@
package com.youlai.boot.config;
import com.github.benmanes.caffeine.cache.Caffeine;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cache.CacheManager;
import org.springframework.cache.caffeine.CaffeineCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* caffeine缓存配置
*
* @author Theo
* @since 2025-01-22 17:40:23
*/
@Slf4j
@Configuration
public class CaffeineConfig {
@Value("${spring.cache.caffeine.spec}")
private String caffeineSpec;
/**
* 缓存管理器
*
* @return CacheManager 缓存管理器
*/
@Bean
public CacheManager cacheManager() {
CaffeineCacheManager caffeineCacheManager = new CaffeineCacheManager();
Caffeine<Object, Object> caffeineBuilder = Caffeine.from(caffeineSpec);
caffeineCacheManager.setCaffeine(caffeineBuilder);
return caffeineCacheManager;
}
}