zoukankan      html  css  js  c++  java
  • SpringMVC上传文件

    <!-- 上传的文件的限制 -->
    <bean id="multipartResolver"
    class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <property name="maxUploadSize" value="10000000" />
    <property name="defaultEncoding" value="UTF-8" />
    </bean>


    public static List<String> imageUpload(HttpServletRequest request, HttpServletResponse response) throws Exception {
    CommonsMultipartResolver cmr = new CommonsMultipartResolver(request.getServletContext());
    // 上文图片路径
    List<String> listFile = new ArrayList<>();
    String imageUrl = null;
    if (cmr.isMultipart(request)) {
    MultipartHttpServletRequest mRequest = (MultipartHttpServletRequest) (request);
    List<MultipartFile> listImage = mRequest.getFiles("picture");
    if (listImage != null && listImage.size() > 0) {
    for (MultipartFile mFile : listImage) {
    if (!mFile.isEmpty()) {
    String suffix = mFile.getOriginalFilename().substring(mFile.getOriginalFilename().lastIndexOf("."));
    suffix = suffix.toLowerCase();
    if (suffix.equals(".jpg") || suffix.equals(".jpeg") || suffix.equals(".png")) {
    String fileName = UUID.randomUUID().toString();
    if (mFile.getSize() < 10000000 && mFile.getSize() > 0) {
    PropertiesUtils pro = new PropertiesUtils();
    // String path = pro.load("file.properties") +
    // "/upload/image";
    // 注意 注意 线上获取上传路径地址
    String path = request.getServletContext().getRealPath("upload/image/");
    File dir = new File(path);
    if (!dir.exists()) {
    dir.mkdirs();
    }
    // 缩略图上传路径 start
    String desPath = path + "/thum_" + fileName;
    // 压缩图片
    Thumbnails.of(mFile.getInputStream()).scale(1f).outputQuality(0.38f).toFile(desPath);
    imageUrl = request.getRequestURL().toString();
    int index = imageUrl.indexOf("xdfstar") + 7;
    String url = imageUrl.substring(0, index);
    imageUrl = url + "/upload/image/" + "thum_" + fileName + ".JPEG";
    request.setAttribute("imageUrl", imageUrl);
    // 存放所有上传图片的路径
    listFile.add(imageUrl);
    } else {
    listFile = null;
    }
    } else {
    }
    }
    }
    } else {
    listFile = null;
    }
    }
    return listFile;
    }

  • 相关阅读:
    应用程序调试技术视频观看指南
    应用程序调试技术视频各集技术概述
    使用gettext技术为ASP.NET网站实现国际化支持
    反调试技术二
    VC 6中使用不同调用规范的函数在符号文件里的表示方式
    使用allpairs自动设计组合测试用例
    BDD测试演示视频
    bitset学习笔记 & 洛谷 P3674 小清新人渣的本愿(莫队、bitset)
    牛客挑战赛53 B.简单的序列(bitset,哥德巴赫猜想)
    P6775 [NOI2020] 制作菜品(dp,bitset)
  • 原文地址:https://www.cnblogs.com/coderdxj/p/6393127.html
Copyright © 2011-2022 走看看