文件上传

一.配置文件

1.先在springmvc配置文件里面配置文件上传解析器

  :::这个文件上传 但是没有保存到本地的服务器里面 ,不能永久保存。

1 <!--文件上传解析器-->
2     <bean class="org.springframework.web.multipart.commons.CommonsMultipartResolver" id="multipartResolver">
3         <property name="maxUploadSize" value="100000000"/>
4     </bean>
//id:必写,内部自动解析调用

2.然后创建一个表单的时候方式写成 post方式 更加安全一些  例子如下

 <form action="/user/upload" method="post" enctype="multipart/form-data">
       名称:<input type="text" name="name"><br/>
       资料:<input type="file" name="file"><br/>
       <input type="submit" value="提交">
   </form>

记住。enctype="multipart/form-data"  必写。

3.创建mvc控制语句

    @RequestMapping("upload")
    public  String upload(String name, MultipartFile file) throws IOException {
        System.out.println(name);
        String filename = file.getOriginalFilename();
        file.transferTo(new File("F:\picture\"+filename));
        return "success";
    }

这里面name 是负责打印出来。new的是一个文件夹 把图片放里面    MultipartFile file 是多个部分的文件

然后运行在页面打开jsp 找到图片就完成图片上传的功能

中途出现乱码的情况:解决问题如下

在web.xml配置文件中配置一个字符乱码过滤器

<!--post乱码解决-->
    <filter>
        <filter-name>encodingFilter</filter-name>
        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>utf-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

这样post乱码情况就解决了!!!

原文地址:https://www.cnblogs.com/ych961107/p/11871691.html