From 09b4103133939c8562e1768018ad6d4e6f0d67c8 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期二, 18 十月 2022 09:23:21 +0800 Subject: [PATCH] 1 --- src/main/java/com/lf/server/service/all/FileService.java | 65 ++++++++++++++++++++++++++------ 1 files changed, 52 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/lf/server/service/all/FileService.java b/src/main/java/com/lf/server/service/all/FileService.java index a5d28e2..cca7864 100644 --- a/src/main/java/com/lf/server/service/all/FileService.java +++ b/src/main/java/com/lf/server/service/all/FileService.java @@ -31,6 +31,7 @@ import java.io.FileInputStream; import java.io.IOException; import java.net.URLEncoder; +import java.util.Date; import java.util.List; import java.util.UUID; @@ -45,6 +46,14 @@ @Autowired AttachService attachService; + + private final static double D92 = 92; + + private final static long ONE_DAY = 24 * 60 * 60 * 1000; + + private final static long SIZE_MAX = 1024 * 1024 * 1024 * 1024; + + private final static long FILE_SIZE_MAX = 256 * 1024 * 1024 * 1024; private final static Log log = LogFactory.getLog(FileService.class); @@ -172,19 +181,16 @@ /** * 涓婁紶鏂囦欢 - * - * @param req - * @param res */ - public void upload(HttpServletRequest req, HttpServletResponse res) { + public void uploadData(HttpServletRequest req, HttpServletResponse res) { try { // 澶勭悊涓枃涔辩爜闂 req.setCharacterEncoding("utf-8"); res.setContentType("text/html;charset=utf-8"); - // 妫�鏌ヨ姹傛槸/鍚︽槸multipart/form-data绫诲瀷 + // 妫�鏌ヨ姹傛槸/鍚︿负multipart/form-data绫诲瀷 if (!ServletFileUpload.isMultipartContent(req)) { - throw new RuntimeException("琛ㄥ崟鐨別nctype灞炴�т笉鏄痬ultipart/form-data绫诲瀷锛侊紒"); + throw new RuntimeException("琛ㄥ崟鐨別nctype灞炴�т笉鏄痬ultipart/form-data绫诲瀷"); } // 鍒涘缓涓婁紶鎵�闇�瑕佺殑涓や釜瀵硅薄锛氱鐩樻枃浠跺璞�+鏂囦欢涓婁紶瀵硅薄 @@ -192,18 +198,15 @@ ServletFileUpload sfu = new ServletFileUpload(factory); ServletRequestContext ctx = new ServletRequestContext(req); - //闄愬埗鍗曚釜鏂囦欢鐨勫ぇ灏� - sfu.setFileSizeMax(1024 * 10); - - //闄愬埗涓婁紶鐨勬�绘枃浠跺ぇ灏� - sfu.setSizeMax(1024 * 200); - + // 闄愬埗涓婁紶鐨勬�绘枃浠跺ぇ灏� + sfu.setSizeMax(SIZE_MAX); + // 闄愬埗鍗曚釜鏂囦欢鐨勫ぇ灏� + sfu.setFileSizeMax(FILE_SIZE_MAX); // 璁剧疆缂栫爜鏂瑰紡 sfu.setHeaderEncoding("utf-8"); // list瀹瑰櫒鐢ㄦ潵淇濆瓨琛ㄥ崟涓殑鎵�鏈夋暟鎹俊鎭� List<FileItem> items = sfu.parseRequest(ctx); - // 閬嶅巻瀹瑰櫒锛屽鐞嗚В鏋愮殑鍐呭锛氫竴涓鐞嗘櫘閫氳〃鍗曞煙锛屼竴涓鐞嗘枃浠剁殑琛ㄥ崟鍩� for (FileItem item : items) { if (item.isFormField()) { @@ -281,4 +284,40 @@ e.printStackTrace(); } } + + + /** + * 鑾峰彇涓存椂璺緞 + */ + public String getTempPath() { + String tempName = FileHelper.getTempPath(); + String tempPath = pathHelper.getConfig().getTempPath(); + String path = tempPath + File.separator + tempName; + + File file = new File(path); + if (!file.exists() && !file.isDirectory()) { + file.mkdirs(); + } + + double ran = Math.random() * 99; + if (ran > D92) { + deleteOldPath(); + } + + return path; + } + + public void deleteOldPath() { + try { + Long time = System.currentTimeMillis(); + for (int i = 1, c = 30; i < c; i++) { + Date date = new Date(time - i * ONE_DAY); + String str = StringHelper.YMD__FORMAT.format(date); + + // + } + } catch (Exception ex) { + log.error(ex.getMessage() + ex.getStackTrace() + "\n"); + } + } } -- Gitblit v1.9.3