spring mvc实现文件上传与下载功能
程序员文章站
2024-02-14 16:31:28
本文实例为大家分享了spring mvc实现文件上传与下载功能的具体代码,供大家参考,具体内容如下
文件上传
在pom.xml中引入spring mvc以及comm...
本文实例为大家分享了spring mvc实现文件上传与下载功能的具体代码,供大家参考,具体内容如下
文件上传
在pom.xml中引入spring mvc以及commons-fileupload的相关jar
<!-- spring mvc --> <dependency> <groupid>org.springframework</groupid> <artifactid>spring-webmvc</artifactid> <version>4.3.13.release</version> </dependency> <!-- 文件上传与下载 --> <dependency> <groupid>commons-fileupload</groupid> <artifactid>commons-fileupload</artifactid> <version>1.3.3</version> </dependency>
在springmvc.xml中加入文件上传的相关配置
<bean id="multipartresolver" class="org.springframework.web.multipart.commons.commonsmultipartresolver"> <!-- 上传文件大小上限,单位为字节(10mb) --> <property name="maxuploadsize"> <value>10485760</value> </property> <!-- 请求的编码格式,必须和jsp的pageencoding属性一致,以便正确读取表单的内容,默认为iso-8859-1 --> <property name="defaultencoding"> <value>utf-8</value> </property> </bean>
在jsp文件中加入form表单
<form action="upload" enctype="multipart/form-data" method="post"> <table> <tr> <td>文件描述:</td> <td><input type="text" name="description"></td> </tr> <tr> <td>请选择文件:</td> <td><input type="file" name="file"></td> </tr> <tr> <td><input type="submit" value="上传"></td> </tr> </table> </form>
添加文件上传的方法
//上传文件会自动绑定到multipartfile中 @requestmapping(value="/upload",method=requestmethod.post) public string upload(httpservletrequest request, @requestparam("description") string description, @requestparam("file") multipartfile file) throws exception { //如果文件不为空,写入上传路径 if(!file.isempty()) { //上传文件路径 string path = request.getservletcontext().getrealpath("/file/"); //上传文件名 string filename = file.getoriginalfilename(); file filepath = new file(path,filename); //判断路径是否存在,如果不存在就创建一个 if (!filepath.getparentfile().exists()) { filepath.getparentfile().mkdirs(); } //将上传文件保存到一个目标文件当中 file.transferto(new file(path + file.separator + filename)); return "success"; } else { return "error"; } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。