文件批量上传
时间:2019-09-13
本文章向大家介绍文件批量上传,主要包括文件批量上传使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="utf-8"></property>
<!-- 配置文件的最大上传容量限制 -->
<property name="maxUploadSize" value="50242440"></property>
</bean>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>文件上传下载</title> </head> <body> <form action="${pageContext.request.contextPath }/file/upload.html" method="post" enctype="multipart/form-data"> 选择文件:<input type="file" multiple="multiple" name="files" width="120px" > <input type="submit" value="上传"> </form> </body> </html>
/*** * 文件的批量上传 * @param files * @param request * @return * @throws Exception * @throws IOException */ @RequestMapping(value="/file/upload.html",method=RequestMethod.POST) public String upload(@RequestParam("files") MultipartFile[] files,MultipartHttpServletRequest request) throws Exception, IOException{ //获取文件夹的名字 List<String[]> filess=new ArrayList<String[]>(); String path = request.getSession().getServletContext().getRealPath("/upload"); StringBuffer stringbuffer=new StringBuffer(); //对传进来的文件数组,进行 循环复制 for(MultipartFile multipartFile:files){ //判断文件是否为空 if(!multipartFile.isEmpty()) { //将多个文件名拼接在一个字符串中,用;分隔 stringbuffer.append(multipartFile.getOriginalFilename()); stringbuffer.append(";"); File dir=new File(path, multipartFile.getOriginalFilename()); //将文件名和对应的路径存放在数组中 String[] files1={multipartFile.getOriginalFilename(),dir.toPath().toString()}; //将一个文件的标识信息存入集合中 filess.add(files1); //System.out.println(dir.toPath()); //文件不存则在创建 if(!dir.exists()&&!dir.isDirectory()){ dir.mkdirs(); } //文件进行复制 multipartFile.transferTo(dir); } } String s=stringbuffer.substring(0, stringbuffer.length()-1); //将文件信息集合存入数据库中 fileOperateService.insertfiles(filess); //跳转到调用文件显示的界面 return "redirect:/file/showall.html"; }
原文地址:https://www.cnblogs.com/itzyz/p/11516755.html
- “领域驱动开发”实例之旅(1)--不一样的开发模式 一、分析业务需求。 二、设计领域对象模型 三、测试领域对象模型 四、设计业务处理类 五、设计Entity和Vi
- Java基础——左移和右移
- 【Python环境】利用 Python、SciKit 和文本分类来实现行为分析
- LJMM平台( Linux +Jexus+MySQL+mono) 上使用MySQL的简单总结
- 判断两个单链表是否相交(有环、无环两种)
- 【数据科学家】SparkR:数据科学家的新利器
- KMP算法浅析
- Bug修复问题
- Java基础——IO流
- 来一点反射和Emit,让ORM的使用极度简化
- Java基础——集合框架
- Java基础——clone()方法浅析
- 【Python环境】matplotlib - 2D 与 3D 图的绘制
- 左求值表达式,堆栈,调试陷阱与ORM查询语言的设计
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Yii框架常见缓存应用实例小结
- 使用Docker搭建DPlayer视频弹幕接口API后端
- php+jQuery ajax实现的实时刷新显示数据功能示例
- yii2.0框架使用 beforeAction 防非法登陆的方法分析
- PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
- php项目中类的自动加载实例讲解
- Yii框架参数配置文件params用法实例分析
- 使用Kotlin实现文字渐变TextView的代码
- thinkPHP5框架路由常用知识点汇总
- PHP实现一个限制实例化次数的类示例
- AndroidStudio中重载方法@Override的使用详解
- mysqli扩展无法在PHP7下升级问题的解决
- PHP通过文件保存和更新信息的方法分析
- PHP中将一个字符串部分字符用星号*替代隐藏的实现代码
- PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】