From 0ced5d2eaab38223a787aebb85a31a6f2de73eb8 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期五, 27 五月 2022 09:58:34 +0800
Subject: [PATCH] update 优化 oss 回显查询 使用 redis 缓存
---
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java | 17 ++++++++++++++++-
1 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java
index 28bee3d..03a6cfc 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysOssServiceImpl.java
@@ -1,5 +1,6 @@
package com.ruoyi.system.service.impl;
+import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -7,6 +8,8 @@
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.redis.RedisUtils;
+import com.ruoyi.oss.constant.OssConstant;
import com.ruoyi.oss.core.OssClient;
import com.ruoyi.oss.entity.UploadResult;
import com.ruoyi.oss.factory.OssFactory;
@@ -20,6 +23,8 @@
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
+import java.time.Duration;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
@@ -44,7 +49,17 @@
@Override
public List<SysOssVo> listByIds(Collection<Long> ossIds) {
- return baseMapper.selectVoById(ossIds);
+ List<SysOssVo> list = new ArrayList<>();
+ for (Long id : ossIds) {
+ String key = OssConstant.SYS_OSS_KEY + id;
+ SysOssVo vo = RedisUtils.getCacheObject(key);
+ if (ObjectUtil.isNull(vo)) {
+ vo = baseMapper.selectVoById(id);
+ RedisUtils.setCacheObject(key, vo, Duration.ofDays(30));
+ }
+ list.add(vo);
+ }
+ return list;
}
private LambdaQueryWrapper<SysOss> buildQueryWrapper(SysOssBo bo) {
--
Gitblit v1.9.3