perf(SysUserServiceImpl): 优化缓存策略解决空值问题
- 为 selectNickNameById 方法添加缓存条件判断,避免对空值进行缓存 - 设置缓存条件为 #userId != null,防止无效参数触发缓存操作 - 配置 unless 规则为 #result == null,确保空结果不被缓存 - 减少不必要的缓存存储空间占用 - 提升缓存命中率和系统响应效率 - 降低数据库查询压力
This commit is contained in:
@@ -518,7 +518,7 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
|
|||||||
return ObjectUtil.isNull(sysUser) ? null : sysUser.getUserName();
|
return ObjectUtil.isNull(sysUser) ? null : sysUser.getUserName();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Cacheable(cacheNames = CacheNames.SYS_NICK_NAME, key = "#userId")
|
@Cacheable(cacheNames = CacheNames.SYS_NICK_NAME, key = "#userId" ,condition = "#userId != null", unless = "#result == null")
|
||||||
@Override
|
@Override
|
||||||
public String selectNickNameById(Long userId) {
|
public String selectNickNameById(Long userId) {
|
||||||
SysUser sysUser = baseMapper.selectOne(new LambdaQueryWrapper<SysUser>()
|
SysUser sysUser = baseMapper.selectOne(new LambdaQueryWrapper<SysUser>()
|
||||||
|
|||||||
Reference in New Issue
Block a user