全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

SpringMVC上传文件的简单实例

SpringMVC上传文件的简单实例

在使用springMVC进行系统实现时,springMVC默认的解析器里面是没有加入对文件上传的解析的,这可以方便我们实现自己的文件上传。但如果你想使用springMVC对文件上传的解析器来处理文件上传的时候就需要在spring的applicationContext里面加上springMVC提供的MultipartResolver的申明。这样之后,客户端每次进行请求的时候,springMVC都会检查request里面是否包含多媒体信息,如果包含了就会使用MultipartResolver进行解析,springMVC会使用一个支持文件处理的MultipartHttpServletRequest来包裹当前的HttpServletRequest,然后使用MultipartHttpServletRequest就可以对文件进行处理了。Spring已经为我们提供了一个MultipartResolver的实现,我们只需要拿来用就可以了,那就是org.springframework.web.multipart.commons.CommsMultipartResolver。因为springMVC的MultipartResolver底层使用的是Commons-fileupload,所以还需要加入对Commons-fileupload.jar的支持。

Xml代码

<!-- 这里申明的id必须为multipartResolver --> 
<bean id="multipartResolver" 
  class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> 
 
  <!-- one of the properties available; the maximum file size in bytes --> 
  <property name="maxUploadSize" value="100000"/> 
</bean> 

CommonsMultipartResolver允许设置的属性有:

     defaultEncoding:表示用来解析request请求的默认编码格式,当没有指定的时候根据Servlet规范会使用默认值ISO-8859-1。当request自己指明了它的编码格式的时候就会忽略这里指定的defaultEncoding。
    uploadTempDir:设置上传文件时的临时目录,默认是Servlet容器的临时目录。
    maxUploadSize:设置允许上传的最大文件大小,以字节为单位计算。当设为-1时表示无限制,默认是-1。
    maxInMemorySize:设置在文件上传时允许写到内存中的最大值,以字节为单位计算,默认是10240。 

下面是一个简单示例:

.html文件

<html> 
  <head> 
    <title>Upload a file please</title> 
  </head> 
  <body> 
    <h1>Please upload a file</h1> 
<!--  enctype(编码格式)必须为multipart/form-data --> 
    <form method="post" action="/form" enctype="multipart/form-data"> 
      <input type="text" name="name"/> 
      <input type="file" name="file"/> 
      <input type="submit"/> 
    </form> 
  </body> 
</html> 
 

对应的action controller:

Java代码

@Controller 
public class FileUpoadController { 
 
  @RequestMapping(value = "/form", method = RequestMethod.POST) 
  public String handleFormUpload(@RequestParam("name") String name, 
    @RequestParam("file") MultipartFile file) { 
    //MultipartFile是对当前上传的文件的封装,当要同时上传多个文件时,可以给定多个MultipartFile参数 
    if (!file.isEmpty()) { 
      byte[] bytes = file.getBytes(); 
      // store the bytes somewhere 
      //在这里就可以对file进行处理了,可以根据自己的需求把它存到数据库或者服务器的某个文件夹 
 
      return "redirect:uploadSuccess"; 
    } else { 
      return "redirect:uploadFailure"; 
    } 
  } 
 
} 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# SpringMVC上传文件  # JSP  # 上传文件实例  # SpringMVC+Ajax实现文件批量上传和下载功能实例代码  # SpringMVC上传文件的两种方法  # SpringMVC多个文件上传及上传后立即显示图片功能  # SpringMVC实现文件上传和下载功能  # SpringMVC 单文件上传与多文件上传实例  # SpringMVC实现文件的上传和下载实例代码  # JavaEE开发之SpringMVC中的自定义消息转换器与文件上传  # SpringMVC文件上传功能实例解析  # SpringMVC文件上传及查看的示例代码  # 文件上传  # 自己的  # 就会  # 多个  # 就可  # 上传  # 以对  # 上传文件  # 的是  # 是一个  # 在这里  # 只需  # 设为  # 你想  # 把它  # 希望能  # 还需要  # 写到  # 谢谢大家  # 可以根据 


相关文章: 企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?  建站主机服务器选购指南:轻量应用与VPS配置解析  广德云建站网站建设方案与建站流程优化指南  如何在橙子建站上传落地页?操作指南详解  Python lxml的etree和ElementTree有什么区别  个人网站制作流程图片大全,个人网站如何注销?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  MySQL查询结果复制到新表的方法(更新、插入)  如何在阿里云ECS服务器部署织梦CMS网站?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  如何通过西部建站助手安装IIS服务器?  建站主机与虚拟主机有何区别?如何选择最优方案?  建站之星与建站宝盒如何选择最佳方案?  如何在万网自助建站中设置域名及备案?  建站之星上传入口如何快速找到?  公司门户网站制作流程,华为官网怎么做?  建站主机选购指南:核心配置与性价比推荐解析  如何在阿里云购买域名并搭建网站?  如何打造高效商业网站?建站目的决定转化率  个人摄影网站制作流程,摄影爱好者都去什么网站?  如何选择可靠的免备案建站服务器?  如何快速重置建站主机并恢复默认配置?  深圳网站制作平台,深圳市做网站好的公司有哪些?  jQuery 常见小例汇总  广州营销型建站服务商推荐:技术优势与SEO优化解析  济南网站建设制作公司,室内设计网站一般都有哪些功能?  香港服务器网站推广:SEO优化与外贸独立站搭建策略  东莞专业制作网站的公司,东莞大学生网的网址是什么?  如何有效防御Web建站篡改攻击?  如何在IIS中新建站点并配置端口与IP地址?  外汇网站制作流程,如何在工商银行网站上做外汇买卖?  已有域名和空间如何搭建网站?  电商平台网站制作流程,电商网站如何制作?  XML的“混合内容”是什么 怎么用DTD或XSD定义  公司网站制作需要多少钱,找人做公司网站需要多少钱?  如何通过wdcp面板快速创建网站?  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  香港服务器如何优化才能显著提升网站加载速度?  建站之星后台密码遗忘?如何快速找回?  如何规划企业建站流程的关键步骤?  制作网站的软件免费下载,免费制作app哪个平台好?  如何通过虚拟机搭建网站?详细步骤解析  制作证书网站有哪些,全国城建培训中心证书查询官网?  山东云建站价格为何差异显著?  怎么将XML数据可视化 D3.js加载XML  建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析  如何用PHP快速搭建高效网站?分步指南  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。