关于springMVC来实现图片上传的功能
话不多说,直接上码
1.applicationContext.xml
<!-- 配置文件上传 --> <!--200*1024*1024即200M resolveLazily属性启用是为了推迟文件解析,以便捕获文件大小异常 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize" value="209715200" /> <!--文件总大小--> <property name="maxUploadSizePerFile" value="2097152"/> <!--单个文件总大小--> <property name="defaultEncoding" value="UTF-8" /> <!--编码方式--> <property name="resolveLazily" value="true" /> </bean>
2. springmvc-servlet.xml
<!-- 定义文件上传解析器 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- 设定默认编码 --> <property name="defaultEncoding" value="UTF-8"></property> <!-- 设定文件上传的最大值5MB,5*1024*1024 --> <property name="maxUploadSize" value="5242880"></property> </bean>
这个不要漏啊
3.pom.xml,下载jar包
<!-- 文件上传所依赖的jar包 --> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency> </dependencies>
4. 实体类
5.Mapping.xml
6.Controller 层
@RequestMapping("/doUpdataOne") public String doUpdataOne(One one,MultipartFile file, Model model, HttpSession session){ //图片上传 if (!file.isEmpty()) { System.out.println("要上传的文件名:" + file.getOriginalFilename()); String path = session.getServletContext().getRealPath("/images"); //路径 try { model.addAttribute("fileName", file.getOriginalFilename()); file.transferTo(new File(path, file.getOriginalFilename())); one.setOimges(file.getOriginalFilename()); //将要上传的文件保存到数据库中 oneService.updataOne(one); //执行修改 } catch (Exception e) { e.printStackTrace(); } } return "redirect:/oneAction/findOneList"; //重定向到显示窗口 }
分享经验,有什么问题直接问我,好了,搬砖去了