SpringMVC文件上传(CommonsMultipartResolver)

发布时间:2024年01月13日

以上传一个图片为例

添加依赖

<!--文件上传-->
<dependency>
    <groupId>commons-fileupload</groupId>
    <artifactId>commons-fileupload</artifactId>
    <version>1.3.1</version>
</dependency>

配置文件上传解析器

<!--配置文件上传解析器-->
<bean id="multipartResolver" 
      class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <property name="maxUploadSize" value="5242880" />
    <property name="defaultEncoding" value="UTF-8" />
</bean>

测试

@Controller
@RequestMapping("/account")
public class AccountController {

    @RequestMapping(path="/upload")
    public String upload(HttpServletRequest request, 
                             MultipartFile upload,Model model) throws IOException {
        System.out.println("springmvc方式的文件上传");
        //获取要上传的文件目录
        String path = 
            request.getSession().getServletContext().getRealPath("/uploads");
        System.out.println("path:"+path);
        //根据文件上传的目录创建File对象,如果不存在则创建1个File对象
        File file = new File(path);
        if(!file.exists()){
            //创建一个file对象
            file.mkdirs();
        }
        //获取文件上传名称
        String filename = upload.getOriginalFilename();
        //完成文件上传
        upload.transferTo(new File(path,filename));

        model.addAttribute("msg", "欢迎你 springmvc");
        return "success";
    }
}

在index.jsp里面定义超链接

<form action="/account/upload" method="post" enctype="multipart/form-data">
        文件: <input type="file" name="upload"></input>
        <input type="submit" value="提交">
    </form>

测试结果

1.上传文件前

2.上传文件后

文章来源:https://blog.csdn.net/m0_74007708/article/details/135561425
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。