文件上传

1 原理:

2 springmvc完成文件上传
依赖

    <!--文件上传的依赖-->
    <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.5</version>
    </dependency>

文件上传的网页

<body>

<%--文件上传的表单提交方式必须为post.
    enctype="multipart/form-data"表单的编码类型必须设置为文件类型
--%>
   <form action="/upload" method="post" enctype="multipart/form-data">
         <%--输入框的类型必须为file类型。--%>
         选择上传的文件: <input type="file" name="myfile"/><br>
         <input type="submit" value="提交"/>
   </form>
</body>
</html>

文件上传的接口

    @RequestMapping("/upload")
    public String upload(MultipartFile myfile, HttpServletRequest request) throws Exception{ //把上传的文件封装到该对象中了。
        //1.获取文件存放的路径,
        String contextPath = request.getSession().getServletContext().getRealPath("/images");
       //2. 根据上面文件再服务器存放的路径创建一个文件对象
        File file=new File(contextPath);
        //3.判断该目录是否存在
        if(!file.exists()){
            file.mkdirs();//创建该目录
        }
        //4. 获取上传的文件名.
        String filename = UUID.randomUUID().toString().replace("-","")+ myfile.getOriginalFilename();
        //5. 把上传的文件转移到服务所在的指定目录下。
        myfile.transferTo(new File(contextPath+"/"+filename));
        return "main";
    }

修改springmvc配置文件

    <!--文件上传解析器-->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
         <!--设置文件上传的最大的大小 单位为字节。10M  1G===>1024M===1024kb===1024b-->
         <property name="maxUploadSize" value="10485760"/>
    </bean>

posted on 2024-12-24 19:09  小木不痞  阅读(66)  评论(0)    收藏  举报

导航