我正在尝试使用 html 表单获取文件。当我使用enctype=multipart/form-data
时,我无法获取表单参数和文件上传。
在 Spring 中使用enctype=multipart/form-data
时是否需要进行任何特殊配置?
JSP代码:
<form method="POST" enctype="multipart/form-data" action="/bucket">
<input type="file" name="file" id="file"/>
<input type = "submit" value="Upload" />
</form>
控制器代码:
@RequestMapping(method = RequestMethod.POST, value = "/bucket")
public ModelAndView exec(HttpServletRequest request) throws IOException {
String fileString = request.getParameter("file");//this is NULL.
}
当我从表单中删除multipart/form-data
时,我可以获取该文件但它已损坏。
任何有关正在发生的事情的领导都将受到赞赏。
答案 0 :(得分:0)
尝试使用@RequestParam
从您的请求中提取文件
@RequestMapping(method = RequestMethod.POST, value = "/bucket")
public ModelAndView exec(@RequestParam(value = "file") MultipartFile file) throws IOException {
InputStream fileStream = file.getInputStream(); //Return an InputStream to read the contents of the file from.
}