文件大小

This commit is contained in:
attiya 2025-08-19 16:43:56 +08:00
parent 9e89c9eb6e
commit 0099d31b65
7 changed files with 49 additions and 20 deletions

View File

@ -3,6 +3,10 @@ server:
spring: spring:
application: application:
name: ebike-gateway name: ebike-gateway
servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB
jackson: jackson:
serialization: serialization:
write-dates-as-timestamps: false write-dates-as-timestamps: false

View File

@ -3,6 +3,10 @@ server:
spring: spring:
application: application:
name: ebike-gateway name: ebike-gateway
servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB
jackson: jackson:
serialization: serialization:
write-dates-as-timestamps: false write-dates-as-timestamps: false

View File

@ -394,8 +394,9 @@ public class EbikeBikeInfoController {
minioUtil.createBucket(MinioUtil.BUCKET_FAULT); minioUtil.createBucket(MinioUtil.BUCKET_FAULT);
InputStream inputStream = multipartFile.getInputStream(); InputStream inputStream = multipartFile.getInputStream();
String fileName = multipartFile.getOriginalFilename(); String fileName = multipartFile.getOriginalFilename();
String contentType = multipartFile.getContentType();
String fileUniqueKey = UUID.randomUUID() + fileName.substring(fileName.lastIndexOf(".")); String fileUniqueKey = UUID.randomUUID() + fileName.substring(fileName.lastIndexOf("."));
minioUtil.uploadFile(inputStream, MinioUtil.BUCKET_FAULT, fileUniqueKey); minioUtil.uploadFile(inputStream, MinioUtil.BUCKET_FAULT, fileUniqueKey,contentType);
String fileUrl = minioUtil.getFileUrl(MinioUtil.BUCKET_FAULT, fileUniqueKey); String fileUrl = minioUtil.getFileUrl(MinioUtil.BUCKET_FAULT, fileUniqueKey);
ResEbikeFaultReportFileDto resEbikeFaultReportFileDto = new ResEbikeFaultReportFileDto(); ResEbikeFaultReportFileDto resEbikeFaultReportFileDto = new ResEbikeFaultReportFileDto();
resEbikeFaultReportFileDto.setUrl(fileUrl); resEbikeFaultReportFileDto.setUrl(fileUrl);

View File

@ -21,32 +21,40 @@ public class MinioUtil {
/** /**
* 创建桶 * 创建桶
*
* @param bucket 数据桶名称 * @param bucket 数据桶名称
* @throws Exception 异常 * @throws Exception 异常
*/ */
public void createBucket(String bucket) throws Exception { public void createBucket(String bucket) throws Exception {
//查看桶是否存在 //查看桶是否存在
boolean exists = minioClient.bucketExists(BucketExistsArgs.builder().bucket(bucket).build()); boolean exists = minioClient.bucketExists(BucketExistsArgs.builder().bucket(bucket).build());
if (!exists){ if (!exists) {
minioClient.makeBucket(MakeBucketArgs.builder().bucket(bucket).build()); minioClient.makeBucket(MakeBucketArgs.builder().bucket(bucket).build());
} }
} }
/** /**
* 上传文件 * 上传文件
*
* @param inputStream 文件流 * @param inputStream 文件流
* @param bucket 数据桶名称 * @param bucket 数据桶名称
* @param objectName 文件名称 * @param objectName 文件名称
* @throws Exception 异常 * @throws Exception 异常
*/ */
public void uploadFile(InputStream inputStream, String bucket, String objectName) throws Exception{ public void uploadFile(InputStream inputStream, String bucket, String objectName, String contentType) throws Exception {
//上传文件 //上传文件
minioClient.putObject(PutObjectArgs.builder().bucket(bucket).object(objectName) minioClient.putObject(
.stream(inputStream,-1,Integer.MAX_VALUE).build()); PutObjectArgs.builder()
.bucket(bucket)
.object(objectName)
.contentType(contentType)
.stream(inputStream, -1, Integer.MAX_VALUE).build()
);
} }
/** /**
* 获取文件分析连接7天有效 * 获取文件分析连接7天有效
*
* @param bucket 数据桶名称 * @param bucket 数据桶名称
* @param fileName 文件名称 * @param fileName 文件名称
* @return url * @return url
@ -57,7 +65,7 @@ public class MinioUtil {
return minioClient.getPresignedObjectUrl( return minioClient.getPresignedObjectUrl(
GetPresignedObjectUrlArgs.builder() GetPresignedObjectUrlArgs.builder()
.method(Method.GET) .method(Method.GET)
.bucket(bucket==null||bucket.isEmpty()? BUCKET_FAULT: bucket) .bucket(bucket == null || bucket.isEmpty() ? BUCKET_FAULT : bucket)
.object(fileName) .object(fileName)
.expiry(7, TimeUnit.DAYS) // 有效期7天 .expiry(7, TimeUnit.DAYS) // 有效期7天
.build() .build()
@ -71,51 +79,56 @@ public class MinioUtil {
* @param fileName 文件名称 * @param fileName 文件名称
* @return url * @return url
*/ */
public String getFileUrl2(String bucket, String fileName){ public String getFileUrl2(String bucket, String fileName) {
try { try {
String url = getFileUrl(bucket==null||bucket.isEmpty()? BUCKET_FAULT: bucket, fileName); String url = getFileUrl(bucket == null || bucket.isEmpty() ? BUCKET_FAULT : bucket, fileName);
return url; return url;
}catch (Exception e){ } catch (Exception e) {
return null; return null;
} }
} }
/** /**
* 获取所有的桶 * 获取所有的桶
*
* @return 数据桶名称列表 * @return 数据桶名称列表
* @throws Exception 异常 * @throws Exception 异常
*/ */
public List<String> getAllBucket() throws Exception{ public List<String> getAllBucket() throws Exception {
List<Bucket> buckets = minioClient.listBuckets(); List<Bucket> buckets = minioClient.listBuckets();
return buckets.stream().map(Bucket::name).collect(Collectors.toList()); return buckets.stream().map(Bucket::name).collect(Collectors.toList());
} }
/** /**
* 下载文件 * 下载文件
*
* @param bucket 数据桶名称 * @param bucket 数据桶名称
* @param objectName 文件名称 * @param objectName 文件名称
* @return 文件流 * @return 文件流
* @throws Exception 异常 * @throws Exception 异常
*/ */
public InputStream downLoad(String bucket,String objectName) throws Exception{ public InputStream downLoad(String bucket, String objectName) throws Exception {
return minioClient.getObject(GetObjectArgs.builder().bucket(bucket).object(objectName).build()); return minioClient.getObject(GetObjectArgs.builder().bucket(bucket).object(objectName).build());
} }
/** /**
* 删除桶 * 删除桶
*
* @param bucket 数据桶名称 * @param bucket 数据桶名称
* @throws Exception 异常 * @throws Exception 异常
*/ */
public void deleteBucket(String bucket) throws Exception{ public void deleteBucket(String bucket) throws Exception {
minioClient.removeBucket(RemoveBucketArgs.builder().bucket(bucket).build()); minioClient.removeBucket(RemoveBucketArgs.builder().bucket(bucket).build());
} }
/** /**
* 删除文件 * 删除文件
*
* @param bucket 数据桶名称 * @param bucket 数据桶名称
* @param objectName 文件名称 * @param objectName 文件名称
* @throws Exception 异常 * @throws Exception 异常
*/ */
public void deleteObject(String bucket,String objectName) throws Exception{ public void deleteObject(String bucket, String objectName) throws Exception {
minioClient.removeObject(RemoveObjectArgs.builder().bucket(bucket).object(objectName).build()); minioClient.removeObject(RemoveObjectArgs.builder().bucket(bucket).object(objectName).build());
} }
} }

View File

@ -1,6 +1,10 @@
spring: spring:
application: application:
name: ebike-maintenance name: ebike-maintenance
servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB
cloud: cloud:
nacos: nacos:
server-addr: 127.0.0.1:8848 # nacos server-addr: 127.0.0.1:8848 # nacos

View File

@ -1,6 +1,10 @@
spring: spring:
application: application:
name: ebike-maintenance name: ebike-maintenance
servlet:
multipart:
max-request-size: 100MB
max-file-size: 100MB
cloud: cloud:
nacos: nacos:
server-addr: 47.109.141.125:8848 # nacos server-addr: 47.109.141.125:8848 # nacos

View File

@ -1,6 +1,5 @@
package com.cdzy.ebikeoperate.model.dto.request; package com.cdzy.ebikeoperate.model.dto.request;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.NotNull;
import lombok.Data; import lombok.Data;