diff --git a/jodconverter-web/src/main/conf/application.properties b/jodconverter-web/src/main/conf/application.properties index 5c568a18..a774c5d2 100644 --- a/jodconverter-web/src/main/conf/application.properties +++ b/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 diff --git a/jodconverter-web/src/main/java/cn/keking/config/ConfigRefreshComponent.java b/jodconverter-web/src/main/java/cn/keking/config/ConfigRefreshComponent.java index d392292c..8a91da8f 100644 --- a/jodconverter-web/src/main/java/cn/keking/config/ConfigRefreshComponent.java +++ b/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); diff --git a/jodconverter-web/src/main/java/cn/keking/utils/FileUtils.java b/jodconverter-web/src/main/java/cn/keking/utils/FileUtils.java index 5372374e..4e241341 100644 --- a/jodconverter-web/src/main/java/cn/keking/utils/FileUtils.java +++ b/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;