一.配置文件
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乱码情况就解决了!!!