1.配置applicationContext.xml文件
- <!-- 支持上传文件 -->
- <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"/>
- <%@ page pageEncoding="utf-8"%>
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>上传图片</title>
- </head>
- <body>
- <form action="upload" method="post" enctype="multipart/form-data">
- <input type="file" name="file" /> <input type="submit" value="Submit" /></form>
- </body>
- </html>
- import java.io.File;
- import java.util.Date;
- import javax.servlet.http.HttpServletRequest;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.ModelMap;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.multipart.MultipartFile;
- @Controller
- public class UploadAction {
- @RequestMapping(value = "/upload")
- public String upload(@RequestParam(value = "file", required = false) MultipartFile file, HttpServletRequest request, ModelMap model) {
- System.out.println("开始");
- //保存文件的路径,在项目的 upload 文件夹内
- String path = request.getSession().getServletContext().getRealPath("upload");
- String fileName = file.getOriginalFilename();
- // String fileName = new Date().getTime()+".jpg";
- File targetFile = new File(path, fileName);
- if(!targetFile.exists()){
- targetFile.mkdirs();
- }
- //保存
- try {
- file.transferTo(targetFile);
- } catch (Exception e) {
- e.printStackTrace();
- }
- //request.getContextPath()+"/upload/"+fileName 文件的保存路径,获取文件时用
- model.addAttribute("fileUrl", request.getContextPath()+"/upload/"+fileName);
- return "result";
- }
- }