我想要这样的表单对象:
public class FormData {
private MultipartFile file1;
private MultipartFile file2;
// setters/getters for above fields and other properties
}
我希望SpringMVC绑定例如<input type="file" name="file1">
HTML表单字段到我的表单对象属性。我在<form:file path="file1" />
中找不到任何JSP标记(如<form:input type="file" path="file1" />
或spring-form.tld
)。有可能吗?如果没有,这种限制是否在Spring内部根深蒂固,并且不容易克服?
我知道如何将文件上传表单值绑定到控制器方法参数(在documentation中描述):
@RequestMapping(value = {"/"}, method = RequestMethod.POST)
public ModelAndView compare(@ModelAttribute(FORM_BEAN_NAME) FormData formData,
@RequestParam("file1") MultipartFile file1,
@RequestParam("file2") MultipartFile file2,
BindingResult bindingResult) {
但是如果所有HTML表单元素绑定到一个类并且添加新上载字段时方法签名不会提升,我会更高兴。
答案 0 :(得分:1)
CommonsMultipartFile
而不是接口。如果您尝试这样做会发生什么,它会抛出一个异常,或者只是值不受约束?