Spring mvc 文件上传的问题。@RequestParam(required = false)

我有个2 javabean
public class ObjectA {
private long id;
private byte[] data;
private MultipartFile file;
}
public class ObjectB {
private String name;
private List<ObjectA> objectA ;
}
public Result Modify(ObjectB b)throws Exception

现在的问题是,file=null 时回保存。
如何允许file为空

contoller层方法参数中接收
@RequestParam(value = "file") CommonsMultipartFile file
页面form中写入 enctype="multipart/form-data"
<!--文件上传spring配置-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!--文件限定为8M-->
<property name="maxUploadSize" value="8388608"></property>
</bean>

引包,我这是maven。其他架构,你可以自己下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>
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-07-25
Spring注解?

Spring mvc 文件上传的问题。@RequestParam(required = false)
RequestParam(value = "file") CommonsMultipartFile file 页面form中写入 enctype="multipart\/form-data"<!--文件上传spring配置--> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!--文件限定为8M--> <property name="maxUploadSize" value=...

SpringMVC的@RequestParam注解(eclipse)
3、@RequestParam注解参数说明和使用 3.1、参数required表示该参数是否为必须要提交的,默认为true,即必须要提交的,如果没有提交该参数则会报错;false表示不是必须的,如果没有提交该参数不会报错。此时参数required=true,name参数提交则正常显示,不提交则会报错,如下:如果将参数改为required=false,n...

SpringMVC的参数校验以及@Valid相关注解的使用和自定义
`@RequestParam`注解具有几个可用属性,包括`name`(指定参数名称,默认为接口定义时的参数名,但可通过该属性覆盖重命名),`required`(默认为`true`,表示参数为必传,若为`false`则该参数可选),`defaultValue`(当参数未传递时提供默认值)。在SpringMVC中,可借助JSR-303验证框架实现参数的校验。...

Java Spring MVC Post用@requestParam注解报错。
我看了你的 参数有controller ,codeIndex,codeInternalValue 也就是你@RequestParam里面的value值且required都为true,所以你发请求的时候也必须有这三个参数而且参数名必须和这三个相同不然会报400。

springmvc实现文件的上传和下载
Spring MVC使用Apache Commons FileUpload技术实现了一个MultipartResolver实现类:CommonsMultipartResolver。因此,SpringMVC的文件上传还需要依赖Apache Commons FileUpload的组件。文件上传 1、导入文件上传的jar包,commons-fileupload , Maven会自动帮我们导入他的依赖包 commons-io包;<!--文件上传--><...

springmvc中@PathVariable和@RequestParam的区别
RequestParam 用户获取请求参数的内容 比如有个请求 \/test\/123?method=234 === 后台会这样写 RequestMethod("\/test\/{id}")public void test(@PathVariable int id,@RequestParam(value = "method", required = false),String method){ 这样 id = 123;method = 234;} ...

表单提交报400错误要怎么解决?
user", user); \\x0d\\x0a return "hello"; \\x0d\\x0a} \\x0d\\x0a\\x0d\\x0a也可以指定该参数是非必须的required=false,如:\\x0d\\x0a\\x0d\\x0a@RequestMapping("\/hello.do") \\x0d\\x0apublic String hello(HttpServletRequest req,HttpServletResponse resp,@RequestParam(...

springmvc中@PathVariable和@RequestParam的区别
RequestParam 用户获取请求参数的内容 比如有个请求 \/test\/123?method=234 === 后台会这样写 RequestMethod("\/test\/{id}")public void test(@PathVariable int id,@RequestParam(value = "method", required = false),String method){ 这样 id = 123;method = 234;} ...

springMVC文件上传,判断是否有文件上传,解
public void upload(@RequestParam MultipartFile file){ String fileName=file.getOriginalFilename(); if(fileName==null||fileName.equals("")){ \/\/没有文件上传 }else{ \/\/有文件上传 } \/\/...}不过我感觉我的方法不太好,如果有更好的方法,记得叫我 ...

SpringMVC使用commons fileupload 上传文件,parseRequest(request...
既然你已经用了Spring MVC,就没有必要自己写上传的代码了,这样做 下一个这样的方法,把MultipartFile传进去 public String upload(@RequestParam(value = "image") MultipartFile image)然后就可以这样做了 image.transferTo(new File("想要保存到哪里"));image还有其他的方法,自己看一下就可以了 XML...

相似回答