diff --git a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/oss/OssBootUtil.java b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/oss/OssBootUtil.java index 605a16d3..3b2e194c 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/oss/OssBootUtil.java +++ b/jero-boot/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/util/oss/OssBootUtil.java @@ -15,6 +15,7 @@ import com.jero.common.util.oConvertUtils; import org.springframework.web.multipart.MultipartFile; import java.io.BufferedInputStream; +import java.io.File; import java.io.IOException; import java.io.InputStream; import java.net.URL; @@ -102,7 +103,7 @@ public class OssBootUtil { * @return oss 中的相对文件路径 */ public static String upload(MultipartFile file, String fileDir,String customBucket) { - String FILE_URL = null; + String url; initOSS(endPoint, accessKeyId, accessKeySecret); StringBuilder fileUrl = new StringBuilder(); String newBucket = bucketName; @@ -123,21 +124,21 @@ public class OssBootUtil { FileTypeFilter.fileTypeFilter(file); //update-end-author:liusq date:20210809 for: 过滤上传文件类型 orgName = CommonUtils.getFileName(orgName); - String fileName = orgName.indexOf(".")==-1 + String fileName = !orgName.contains(".") ?orgName + "_" + System.currentTimeMillis() :orgName.substring(0, orgName.lastIndexOf(".")) + "_" + System.currentTimeMillis() + orgName.substring(orgName.lastIndexOf(".")); if (!fileDir.endsWith("/")) { fileDir = fileDir.concat("/"); } //update-begin-author:wangshuai date:20201012 for: 过滤上传文件夹名特殊字符,防止攻击 - fileDir=StrAttackFilter.filter(fileDir); + fileDir = StrAttackFilter.filter(fileDir); //update-end-author:wangshuai date:20201012 for: 过滤上传文件夹名特殊字符,防止攻击 - fileUrl = fileUrl.append(fileDir + fileName); + fileUrl.append(fileDir).append(fileName); if (oConvertUtils.isNotEmpty(staticDomain) && staticDomain.toLowerCase().startsWith("http")) { - FILE_URL = staticDomain + "/" + fileUrl; + url = staticDomain + File.separator + fileUrl; } else { - FILE_URL = HTTPS_CONSTANT + newBucket + "." + endPoint + "/" + fileUrl; + url = HTTPS_CONSTANT + newBucket + "." + endPoint + File.separator + fileUrl; } PutObjectResult result = ossClient.putObject(newBucket, fileUrl.toString(), file.getInputStream()); // 设置权限(公开读) @@ -145,14 +146,11 @@ public class OssBootUtil { if (result != null) { log.info(OSS_UPLOAD_CONSTANT + fileUrl); } - } catch (IOException e) { - e.printStackTrace(); - return null; - }catch (Exception e) { + } catch (Exception e) { e.printStackTrace(); return null; } - return FILE_URL; + return url; } /** @@ -188,7 +186,7 @@ public class OssBootUtil { * @return oss 中的相对文件路径 */ public static String upload(FileItemStream file, String fileDir) { - String FILE_URL = null; + String url; initOSS(endPoint, accessKeyId, accessKeySecret); StringBuilder fileUrl = new StringBuilder(); try { @@ -198,11 +196,11 @@ public class OssBootUtil { fileDir = fileDir.concat("/"); } fileDir = StrAttackFilter.filter(fileDir); - fileUrl = fileUrl.append(fileDir + fileName); + fileUrl.append(fileDir).append(fileName); if (oConvertUtils.isNotEmpty(staticDomain) && staticDomain.toLowerCase().startsWith("http")) { - FILE_URL = staticDomain + "/" + fileUrl; + url = staticDomain + File.separator + fileUrl; } else { - FILE_URL = HTTPS_CONSTANT + bucketName + "." + endPoint + "/" + fileUrl; + url = HTTPS_CONSTANT + bucketName + "." + endPoint + File.separator + fileUrl; } PutObjectResult result = ossClient.putObject(bucketName, fileUrl.toString(), file.openStream()); // 设置权限(公开读) @@ -214,7 +212,7 @@ public class OssBootUtil { e.printStackTrace(); return null; } - return FILE_URL; + return url; } /** @@ -325,21 +323,21 @@ public class OssBootUtil { * @return */ public static String upload(InputStream stream, String relativePath) { - String FILE_URL = null; + String url; String fileUrl = relativePath; initOSS(endPoint, accessKeyId, accessKeySecret); if (oConvertUtils.isNotEmpty(staticDomain) && staticDomain.toLowerCase().startsWith("http")) { - FILE_URL = staticDomain + "/" + relativePath; + url = staticDomain + File.separator + relativePath; } else { - FILE_URL = HTTPS_CONSTANT + bucketName + "." + endPoint + "/" + fileUrl; + url = HTTPS_CONSTANT + bucketName + "." + endPoint + File.separator + fileUrl; } - PutObjectResult result = ossClient.putObject(bucketName, fileUrl.toString(),stream); + PutObjectResult result = ossClient.putObject(bucketName, fileUrl,stream); // 设置权限(公开读) ossClient.setBucketAcl(bucketName, CannedAccessControlList.PublicRead); if (result != null) { log.info(OSS_UPLOAD_CONSTANT + fileUrl); } - return FILE_URL; + return url; }