From 61f59e410c640be22529966fb3efc059d09a632f Mon Sep 17 00:00:00 2001 From: fengshuonan Date: Mon, 19 Sep 2022 13:46:20 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=907.2.5=E3=80=91=E3=80=90file=E3=80=91?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=96=87=E4=BB=B6=E5=90=8D=E7=A7=B0=E8=BF=87?= =?UTF-8?q?=E6=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../roses/kernel/rule/util/StrFilterUtil.java | 24 +++++++++++++++++++ .../service/impl/SysFileInfoServiceImpl.java | 16 +++++++++---- 2 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/util/StrFilterUtil.java diff --git a/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/util/StrFilterUtil.java b/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/util/StrFilterUtil.java new file mode 100644 index 000000000..de4067f31 --- /dev/null +++ b/kernel-a-rule/src/main/java/cn/stylefeng/roses/kernel/rule/util/StrFilterUtil.java @@ -0,0 +1,24 @@ +package cn.stylefeng.roses.kernel.rule.util; + +import java.util.regex.Pattern; + +/** + * 字符串过滤工具,主要过滤不合法的请求参数 + * + * @author fengshuonan + * @date 2022/9/19 13:37 + */ +public class StrFilterUtil { + + /** + * 过滤文件名 + * + * @author fengshuonan + * @date 2022/9/19 13:39 + */ + public static String filterFileName(String param) { + Pattern fileNamePattern = Pattern.compile("[\\\\/:*?\"<>|\\s]"); + return fileNamePattern.matcher(param).replaceAll(""); + } + +} diff --git a/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java b/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java index 3db277540..7e46050c6 100644 --- a/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java +++ b/kernel-d-file/file-business/src/main/java/cn/stylefeng/roses/kernel/file/modular/service/impl/SysFileInfoServiceImpl.java @@ -56,6 +56,7 @@ import cn.stylefeng.roses.kernel.file.modular.mapper.SysFileInfoMapper; import cn.stylefeng.roses.kernel.file.modular.service.SysFileInfoService; import cn.stylefeng.roses.kernel.file.modular.service.SysFileStorageService; import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum; +import cn.stylefeng.roses.kernel.rule.util.StrFilterUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; @@ -151,7 +152,8 @@ public class SysFileInfoServiceImpl extends ServiceImpl fileInfos = this.list(wrapper); // 批量删除 @@ -243,7 +245,8 @@ public class SysFileInfoServiceImpl extends ServiceImpl list = this.baseMapper.fileInfoList(page, sysFileInfoRequest); // 排除defaultAvatar.png这个图片,这个是默认头像 - List newList = list.stream().filter(i -> !i.getFileOriginName().equals(FileConstants.DEFAULT_AVATAR_FILE_OBJ_NAME)).collect(Collectors.toList()); + List newList = list.stream().filter(i -> !i.getFileOriginName().equals(FileConstants.DEFAULT_AVATAR_FILE_OBJ_NAME)) + .collect(Collectors.toList()); // 拼接图片url地址 for (SysFileInfoListResponse sysFileInfoListResponse : newList) { @@ -373,6 +376,10 @@ public class SysFileInfoServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(SysFileInfo::getFileObjectName, sysFileInfoRequest.getFileObjectName()); @@ -452,7 +459,8 @@ public class SysFileInfoServiceImpl extends ServiceImpl