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

    1.springmvc文件上传功能,使用的是apache提供的文件上传组件

        commons-fileupload-xxx.jar

        commons-io-xxx.jar

    2.在springmvc的配置文件中,添加文件上传解析器

               <!-- 文件上传解析器 -->
               <bean id="multipartResolver"
                            class="org.springframework.web.multipart.commons.CommonsMultipartResolver"
                            p:maxUploadSize="34564356345456"
                            p:defaultEncoding="utf-8">
                            <!-- <property name="defaultEncoding" value="utf-8"></property> -->
               </bean>

    3.在jsp页面中做如下设置

         form标记的enctype属性值必须为:multipart/form-data

         form标记的method属性值必须为:post

         文件上传使用的html标记为:<input type="file" name="xxx" />

    4.在springmvc的控制器方法中,添加MultipartFile参数

                 @RequestMapping(value={"/add", "/insert"}, method={RequestMethod.POST})
                 public String add(String goodsName, MultipartFile photo, HttpServletRequest request){

                           //判断是否上传了文件
                           if(photo.isEmpty()==false){
                                   try{
                                              //保存的路径 c:Program Filesapache tomcat 7.0webappsspringmvc_2016110102files
                                              //获取files文件夹的绝对路径
                                              String path = request.getServletContext().getRealPath("files");
                                              String filePath = path +"/"+photo.getOriginalFilename();
                                              //存储文件
                                              photo.transferTo(new File(filePath));
                                     }catch(Exception ex){
                                                ex.printStackTrace();
                                     }
                           }

                            return "goods/list";
               }

    注意:为了避免上传的文件,因为文件名相同造成被覆盖的问题,可以将存储的新文件名称按uuid来命名。

             对于多文件上传的情况,只需要在控制器方法中添加MultipartFile[]数组参数即可。

  • 相关阅读:
    【python-leetcode107-树的宽度遍历】二叉树的层次遍历Ⅱ
    Spring依赖
    Dubbo依赖
    免费内网穿透
    Oracle分析函数Over()
    测压工具
    编译器版本
    修改gridfilters.js源码,往后台多传递一个参数,并设置NumericFilter、StringFilter默认提示信息
    网站10分钟不操作会话退出
    win10彻底关闭windows defender,解决无故占用大量CPU问题
  • 原文地址:https://www.cnblogs.com/Lchao/p/6491141.html
Copyright © 2011-2022 走看看