Browse Source

增加获取文件内容接口

dsx 1 year ago
parent
commit
651ed3598d

+ 5 - 0
4dkankan-utils-filestorage/src/main/java/com/fdkankan/filestorage/FileStorageTemplate.java

@@ -5,6 +5,7 @@ package com.fdkankan.filestorage;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import java.io.File;
 import java.io.File;
+import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStream;
 import java.util.List;
 import java.util.List;
 
 
@@ -93,4 +94,8 @@ public interface FileStorageTemplate {
     String calculateUrl(String pathKey);
     String calculateUrl(String pathKey);
     String calculateUrl(String bucket, String pathKey);
     String calculateUrl(String bucket, String pathKey);
     String getHostByBucket(String bucket);
     String getHostByBucket(String bucket);
+
+    String getFileContent(String bucket, String keyName) throws Exception;
+
+    String getFileContent(String keyName) throws Exception;
 }
 }

+ 20 - 0
4dkankan-utils-filestorage/src/main/java/com/fdkankan/filestorage/aliyun/AliyunOssTemplate.java

@@ -342,5 +342,25 @@ public class AliyunOssTemplate implements FileStorageTemplate {
         return calculateUrl(bucket, pathKey);
         return calculateUrl(bucket, pathKey);
     }
     }
 
 
+    @Override
+    public String getFileContent(String bucket, String keyName) throws Exception {
+        try (OSSObject ossObject = ossClient.getObject(bucket, keyName);
+            InputStream objectContent = ossObject.getObjectContent();
+            BufferedReader reader = new BufferedReader(new InputStreamReader(objectContent))){
+            StringBuilder contentJson = new StringBuilder();
+            while (true) {
+                String line = reader.readLine();
+                if (line == null) break;
+                contentJson.append(line);
+            }
+            return contentJson.toString();
+        } catch (Exception e) {
+            throw e;
+        }
+    }
 
 
+    @Override
+    public String getFileContent(String keyName) throws Exception {
+        return this.getFileContent(this.getBucket(), keyName);
+    }
 }
 }

+ 22 - 0
4dkankan-utils-filestorage/src/main/java/com/fdkankan/filestorage/aws/AwsTemplate.java

@@ -394,5 +394,27 @@ public class AwsTemplate implements FileStorageTemplate {
         return calculateUrl(bucket, pathKey);
         return calculateUrl(bucket, pathKey);
     }
     }
 
 
+    @Override
+    public String getFileContent(String bucket, String keyName) throws Exception {
+        try (S3Object object = amazonS3Client.getObject(new GetObjectRequest(bucket,keyName));
+             S3ObjectInputStream inputStream = object.getObjectContent();
+             BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream))){
+            StringBuilder content = new StringBuilder();
+            while (true) {
+                String line = reader.readLine();
+                if (line == null) break;
+                content.append(line);
+            }
+            return content.toString();
+        } catch (Exception e) {
+            throw e;
+        }
+    }
+
+    @Override
+    public String getFileContent(String keyName) throws Exception {
+        return this.getFileContent(this.getBucket(), keyName);
+    }
+
 
 
 }
 }

+ 22 - 0
4dkankan-utils-filestorage/src/main/java/com/fdkankan/filestorage/cos/CosTemplate.java

@@ -352,5 +352,27 @@ public class CosTemplate implements FileStorageTemplate {
         return calculateUrl(bucket, pathKey);
         return calculateUrl(bucket, pathKey);
     }
     }
 
 
+    @Override
+    public String getFileContent(String bucket, String keyName) throws Exception {
+        try (COSObject object = cosClient.getObject(bucket, keyName);
+            InputStream objectContent = object.getObjectContent();
+            BufferedReader reader = new BufferedReader(new InputStreamReader(objectContent))){
+            StringBuilder contentJson = new StringBuilder();
+            while (true) {
+                String line = reader.readLine();
+                if (line == null) break;
+                contentJson.append(line);
+            }
+            return contentJson.toString();
+        } catch (Exception e) {
+            throw e;
+        }
+    }
+
+    @Override
+    public String getFileContent(String keyName) throws Exception {
+        return this.getFileContent(this.getBucket(), keyName);
+    }
+
 
 
 }
 }

+ 23 - 0
4dkankan-utils-filestorage/src/main/java/com/fdkankan/filestorage/minio/MinioTemplate.java

@@ -5,11 +5,15 @@ import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.io.IoUtil;
 import cn.hutool.core.io.IoUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSON;
+import com.amazonaws.services.s3.model.GetObjectRequest;
+import com.amazonaws.services.s3.model.S3Object;
+import com.amazonaws.services.s3.model.S3ObjectInputStream;
 import com.fdkankan.filestorage.Consumer;
 import com.fdkankan.filestorage.Consumer;
 import com.fdkankan.filestorage.InnerUtils;
 import com.fdkankan.filestorage.InnerUtils;
 import com.fdkankan.filestorage.properties.MinioProperties;
 import com.fdkankan.filestorage.properties.MinioProperties;
 
 
 import com.fdkankan.filestorage.FileStorageTemplate;
 import com.fdkankan.filestorage.FileStorageTemplate;
+import com.qcloud.cos.model.COSObject;
 import io.minio.*;
 import io.minio.*;
 import io.minio.errors.*;
 import io.minio.errors.*;
 import io.minio.messages.Item;
 import io.minio.messages.Item;
@@ -365,5 +369,24 @@ public class MinioTemplate implements FileStorageTemplate {
         return calculateUrl(bucket, pathKey);
         return calculateUrl(bucket, pathKey);
     }
     }
 
 
+    @Override
+    public String getFileContent(String bucket, String keyName) throws Exception {
+        try (GetObjectResponse object = minioClient.getObject(GetObjectArgs.builder().bucket(bucket).object(keyName).build());
+             BufferedReader reader = new BufferedReader(new InputStreamReader(object))){
+            StringBuilder contentJson = new StringBuilder();
+            while (true) {
+                String line = reader.readLine();
+                if (line == null) break;
+                contentJson.append(line);
+            }
+            return contentJson.toString();
+        } catch (Exception e) {
+            throw e;
+        }
+    }
 
 
+    @Override
+    public String getFileContent(String keyName) throws Exception {
+        return this.getFileContent(this.getBucket(), keyName);
+    }
 }
 }

+ 1 - 1
4dkankan-utils-model/src/main/java/com/fdkankan/model/utils/CreateObjUtil.java

@@ -690,7 +690,7 @@ public class CreateObjUtil {
 	}
 	}
 
 
 	public static void main(String[] args) throws Exception {
 	public static void main(String[] args) throws Exception {
-		CreateObjUtil.convertTxtToVisionmodeldata("D:\\test\\vision(5).txt", "D:\\test\\vision.modeldata");
+		CreateObjUtil.convertVisionmodeldataToTxtCommon("D:\\test\\vision.modeldata", "D:\\test\\vision.txt");
 
 
 	}
 	}
 
 

+ 4 - 3
4dkankan-utils-rabbitmq/src/main/java/com/fdkankan/rabbitmq/util/RabbitMqProducer.java

@@ -1,10 +1,10 @@
 package com.fdkankan.rabbitmq.util;
 package com.fdkankan.rabbitmq.util;
 
 
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONObject;
-import com.fdkankan.rabbitmq.config.ModelingQueueConfig;
 import com.rabbitmq.client.AMQP;
 import com.rabbitmq.client.AMQP;
 import com.rabbitmq.client.AMQP.Queue.DeclareOk;
 import com.rabbitmq.client.AMQP.Queue.DeclareOk;
 import com.rabbitmq.client.Channel;
 import com.rabbitmq.client.Channel;
+import lombok.Data;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.amqp.rabbit.connection.CorrelationData;
 import org.springframework.amqp.rabbit.connection.CorrelationData;
@@ -24,12 +24,13 @@ import java.util.UUID;
  * @since 2022/4/19
  * @since 2022/4/19
  **/
  **/
 @Component
 @Component
+@Data
 public class RabbitMqProducer {
 public class RabbitMqProducer {
 
 
     private Logger log = LoggerFactory.getLogger(this.getClass().getName());
     private Logger log = LoggerFactory.getLogger(this.getClass().getName());
 
 
-    @Autowired
-    ModelingQueueConfig modelingQueueConfig;
+//    @Autowired
+//    ModelingQueueConfig modelingQueueConfig;
 
 
     @Autowired
     @Autowired
     private RabbitTemplate rabbitTemplate;
     private RabbitTemplate rabbitTemplate;