diff --git a/src/main/java/com/ai/da/common/enums/PoseEnum.java b/src/main/java/com/ai/da/common/enums/PoseEnum.java index 713e791e..09480d9e 100644 --- a/src/main/java/com/ai/da/common/enums/PoseEnum.java +++ b/src/main/java/com/ai/da/common/enums/PoseEnum.java @@ -63,7 +63,9 @@ public enum PoseEnum { } public static List> getPropertyList() { - return new ArrayList<>(PROPERTY_LIST); // 返回副本以保证不可变性 + return PROPERTY_LIST.stream() + .map(HashMap::new) // 深拷贝每个 Map + .collect(Collectors.toList()); } public static List getVideoList() { diff --git a/src/main/java/com/ai/da/common/utils/MinioUtil.java b/src/main/java/com/ai/da/common/utils/MinioUtil.java index de9e423b..1dc16740 100644 --- a/src/main/java/com/ai/da/common/utils/MinioUtil.java +++ b/src/main/java/com/ai/da/common/utils/MinioUtil.java @@ -377,7 +377,8 @@ public class MinioUtil { try { String lowerName = fileName.toLowerCase(); - boolean isImage = lowerName.endsWith(".jpg") || lowerName.endsWith(".jpeg") || lowerName.endsWith(".png"); + boolean isImage = lowerName.endsWith(".jpg") || lowerName.endsWith(".jpeg") + || lowerName.endsWith(".png") || lowerName.endsWith(".gif"); GetPresignedObjectUrlArgs.Builder builder = GetPresignedObjectUrlArgs.builder() .bucket(bucketName) @@ -390,6 +391,8 @@ public class MinioUtil { String contentType = "image/jpeg"; if (lowerName.endsWith(".png")) { contentType = "image/png"; + } else if (lowerName.endsWith(".gif")) { // 新增 GIF + contentType = "image/gif"; } Map queryParams = new HashMap<>(); @@ -400,8 +403,10 @@ public class MinioUtil { } return minioClient.getPresignedObjectUrl(builder.build()); - } catch (MinioException | InvalidKeyException | IOException | NoSuchAlgorithmException e) { + } catch (MinioException | InvalidKeyException + | IOException | NoSuchAlgorithmException | IllegalArgumentException e) { e.printStackTrace(); + log.error("bucket: {}, object:{}", bucketName, fileName); throw new BusinessException(e.getMessage()); } }