Quellcode durchsuchen

文件转换编码默认根据操作系统获取,变为可选配置
文本和多媒体类型添加默认值,变为可选配置

陈精华 vor 6 Jahren
Ursprung
Commit
af8ddc10da

+ 6 - 6
jodconverter-web/src/main/conf/application.properties

@@ -27,9 +27,9 @@ spring.http.multipart.max-file-size=100MB
 #spring.redisson.address = 192.168.1.204:6379
 
 #######################################可在运行时动态配置#######################################
-##文本类型
-simText = txt,html,xml,java,properties,mp3,mp4,sql
-#多媒体类型
-media=mp3,mp4,flv,
-#文件转换编码
-converted.file.charset = GBK
+#文本类型,默认如下,可自定义添加
+#simText = txt,html,xml,properties,md,java,py,c,cpp,sql
+#多媒体类型,默认如下,可自定义添加
+#media = mp3,wav,mp4,flv
+#文件转换编码,默认根据操作系统获取
+#converted.file.charset = GBK

+ 9 - 4
jodconverter-web/src/main/java/cn/keking/config/ConfigRefreshComponent.java

@@ -21,6 +21,10 @@ public class ConfigRefreshComponent {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(ConfigRefreshComponent.class);
 
+    public static final String DEFAULT_TXT_TYPE = "txt,html,xml,properties,md,java,py,c,cpp,sql";
+    public static final String DEFAULT_MEDIA_TYPE = "mp3,wav,mp4,flv";
+
+
     @PostConstruct
     void refresh() {
         Thread configRefreshThread = new Thread(new ConfigRefreshThread());
@@ -32,9 +36,10 @@ public class ConfigRefreshComponent {
         public void run() {
             try {
                 Properties properties = new Properties();
+                Properties sysProperties = System.getProperties();
                 String text;
                 String media;
-                String convertedFileCharset;
+                String convertedFileCharset = sysProperties.getProperty("sun.jnu.encoding");
                 String[] textArray ;
                 String[] mediaArray;
                 String homePath = OfficeUtils.getHomePath();
@@ -43,9 +48,9 @@ public class ConfigRefreshComponent {
                 while (true) {
                     BufferedReader bufferedReader = new BufferedReader(new FileReader(configFilePath));
                     properties.load(bufferedReader);
-                    text = properties.get("simText") == null ? "" : properties.get("simText").toString();
-                    media = properties.get("media") == null ? "" : properties.get("media").toString();
-                    convertedFileCharset = properties.get("converted.file.charset") == null ? "" : properties.get("converted.file.charset").toString();
+                    text = properties.getProperty("simText", DEFAULT_TXT_TYPE);
+                    media = properties.getProperty("media", DEFAULT_MEDIA_TYPE);
+                    convertedFileCharset = properties.getProperty("converted.file.charset", convertedFileCharset);
                     textArray = text.split(",");
                     mediaArray = media.split(",");
                     ConfigConstants.setSimText(textArray);

+ 3 - 18
jodconverter-web/src/main/java/cn/keking/utils/FileUtils.java

@@ -8,7 +8,6 @@ import com.google.common.collect.Lists;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import java.io.*;
@@ -32,14 +31,6 @@ public class FileUtils {
 
     String fileDir = ConfigConstants.getFileDir();
 
-    @Value("${converted.file.charset}")
-    String charset;
-
-    @Value("${simText}")
-    String[] simText;
-
-    @Value("${media}")
-    String[] media;
     /**
      * 已转换过的文件集合(redis缓存)
      * @return
@@ -63,12 +54,8 @@ public class FileUtils {
      * @return
      */
     public FileType typeFromUrl(String url) {
-        if (ConfigConstants.getSimText() != null && ConfigConstants.getSimText().length > 0) {
-            simText = ConfigConstants.getSimText();
-        }
-        if (ConfigConstants.getMedia() != null && ConfigConstants.getMedia().length > 0) {
-            media = ConfigConstants.getMedia();
-        }
+        String[] simText = ConfigConstants.getSimText();
+        String[] media = ConfigConstants.getMedia();
         String nonPramStr = url.substring(0, url.indexOf("?") != -1 ? url.indexOf("?") : url.length());
         String fileName = nonPramStr.substring(nonPramStr.lastIndexOf("/") + 1);
         String fileType = fileName.substring(fileName.lastIndexOf(".") + 1);
@@ -223,9 +210,7 @@ public class FileUtils {
      */
     public void doActionConvertedFile(String outFilePath) {
         StringBuffer sb = new StringBuffer();
-        if(ConfigConstants.getConvertedFileCharset() != null) {
-            charset = ConfigConstants.getConvertedFileCharset();
-        }
+        String charset = ConfigConstants.getConvertedFileCharset();
         try (InputStream inputStream = new FileInputStream(outFilePath);
             BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, charset))){
             String line;