文件上传mvc

此生再无相见时 提交于 2019-12-25 13:22:07

Controller

@Controller
@RequestMapping("/file")
public class UploadController {
    
    /**
     * mvc文件上传
     * @param request
     * @param upload
     * @return
     * @throws IOException
     */
    @RequestMapping("/upload2")
    public String upload2(HttpServletRequest request, MultipartFile upload) throws IOException {
        String realPath = request.getSession().getServletContext().getRealPath("/uploads");
        File file = new File(realPath);
        if (!file.exists()) {
            file.mkdirs();
        }
        //获取文件名
        String filename = upload.getOriginalFilename();
        String uuid = UUID.randomUUID().toString().replace("-", "");
        upload.transferTo(new File(realPath, uuid + "_" + filename));
        return "success";
    }
}

pom

 		<dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.4</version>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.4</version>
        </dependency>
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.3.3</version>
        </dependency>

applicationContext.xml

<!--解析器-->
<bean class="org.springframework.web.multipart.commons.CommonsMultipartResolver" id="multipartResolver">
        <property name="maxUploadSize" value="10485760"/>
    </bean>

前端表单

<h3>文件上传</h3>
<form action="/file/upload2" method="post" enctype="multipart/form-data">
    <%--该表单的name要和方法中的接受的变量名一样--%>
    <input type="file" name="upload"><br>
    <input type="submit" value="提交"/>
</form>
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!