UpUtil.java 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. package jnpf.util;
  2. import jnpf.constant.MsgCode;
  3. import org.springframework.web.multipart.MultipartFile;
  4. import org.springframework.web.multipart.MultipartHttpServletRequest;
  5. import org.springframework.web.multipart.MultipartResolver;
  6. import org.springframework.web.multipart.support.StandardServletMultipartResolver;
  7. import java.io.File;
  8. import java.io.IOException;
  9. import java.text.SimpleDateFormat;
  10. import java.util.ArrayList;
  11. import java.util.Date;
  12. import java.util.List;
  13. import java.util.Map;
  14. /**
  15. *
  16. * @author JNPF开发平台组
  17. * @version V3.1.0
  18. * @copyright 引迈信息技术有限公司
  19. * @date 2021/3/16 10:57
  20. */
  21. public class UpUtil {
  22. /**
  23. * 获取上传文件
  24. */
  25. public static List<MultipartFile> getFileAll(){
  26. MultipartResolver resolver = new StandardServletMultipartResolver();
  27. MultipartHttpServletRequest mRequest = resolver.resolveMultipart(ServletUtil.getRequest());
  28. Map<String, MultipartFile> fileMap = mRequest.getFileMap();
  29. List<MultipartFile> list = new ArrayList<>();
  30. for(Map.Entry<String,MultipartFile> map : fileMap.entrySet()){
  31. list.add(map.getValue());
  32. }
  33. return list;
  34. }
  35. /**
  36. * 获取文件大小
  37. */
  38. public static long getFileSize(MultipartFile multipartFile){
  39. return multipartFile.getSize();
  40. }
  41. /**
  42. * 获取文件类型
  43. */
  44. public static String getFileType(MultipartFile multipartFile){
  45. if (multipartFile.getContentType()!=null) {
  46. String[] split = multipartFile.getOriginalFilename().split("\\.");
  47. if (split.length>1) {
  48. return split[split.length-1];
  49. }
  50. }
  51. return "";
  52. }
  53. /**
  54. * 上传文件
  55. */
  56. public static String upLoad(MultipartFile file) {
  57. if (file.isEmpty()) {
  58. throw new RuntimeException(MsgCode.FA032.get());
  59. }
  60. String fileName = file.getOriginalFilename();
  61. Date date=new Date();
  62. SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
  63. String time = formatter.format(date);
  64. String uuidFileName = time+"_"+ RandomUtil.uuId()+"@"+fileName;
  65. File dest = new File(XSSEscape.escapePath(uuidFileName));
  66. if(!dest.getParentFile().exists()){
  67. dest.getParentFile().mkdir();
  68. }
  69. try {
  70. file.transferTo(dest);
  71. return uuidFileName;
  72. } catch (IllegalStateException e) {
  73. e.printStackTrace();
  74. } catch (IOException e) {
  75. e.printStackTrace();
  76. }
  77. return null;
  78. }
  79. }