SpringMvc多文件上传简单实现
public ResponseItem uploadFile(MultipartHttpServletRequest request,FileItem fileItem,PageData pd) {
ResponseItem responseItem=new ResponseItem();
try {
boolean isSuccess = false;
MultiValueMap<String,MultipartFile> multiMap = request.getMultiFileMap();
String relativePath = CreateDateDirUtil.create(Const.UPLOADPATH+"/upload");//保存文件夹
Set<String> keys = multiMap.keySet();//遍历文件
isSuccess=true;
if(isSuccess){
FileItem uploadfile = new FileItem();
for (String key:keys) {
List<MultipartFile> mutiFiles = multiMap.get(key);
for(MultipartFile file :mutiFiles){
String uuid= UuidUtil.get32UUID();
String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().indexOf("."));//获取文件类型
uploadfile.setProc(fileItem.getProc());//设置流程实例ID
uploadfile.setFileTempname(uuid+suffix);//设置数据库文件存储名,32位
uploadfile.setNames(fileItem.getNames());//设置上传者姓名
uploadfile.setUserid(fileItem.getUserid());//设置上传者id
logger.debug("==>"+suffix);
String fileName = URLDecoder.decode(file.getOriginalFilename());
logger.debug("上传附件名==>"+fileName);
uploadfile.setFilename(fileName);//上传附件名
uploadfile.setFilepath("upload/"+relativePath);
String type=fileItem.getType();
if(type.equals("blfj")){
fileItem.setType("办理附件");
}
if(type.equals("jxfj")){
fileItem.setType("结项附件");
}
if(type.equals("xcfj")){
fileItem.setType("巡查附件");
}
uploadfile.setType("办理附件");
uploadfile.setTime(new Date());//上传时间
logger.debug("==>"+Const.UPLOADPATH+"/"+relativePath+uuid+suffix);
file.transferTo(new File(Const.UPLOADPATH+"/upload/"+relativePath,uuid+suffix));//写入文件,文件名通过UUID生产
/** 插入媒体文件 */
isSuccess = workflowDao.insertWorkflowUploadFile(uploadfile);
}
}
if(isSuccess){
return responseItem.getSuccessInfo(isSuccess);
}else{
return responseItem.getFailureInfo("false");
}
}
}catch (Exception e){
e.printStackTrace();
}
return responseItem;
}
SpringMvc多文件上传简单实现的更多相关文章
- 关于SpringMVC的文件上传
关于文件的上传,之前写过2篇文章,基于Struts2框架,下面给出文章链接: <关于Struts2的文件上传>:http://www.cnblogs.com/lichenwei/p/392 ...
- 一起学SpringMVC之文件上传
概述 在Web系统开发过程中,文件上传是普遍的功能,本文主要以一个简单的小例子,讲解SpringMVC中文件上传的使用方法,仅供学习分享使用,如有不足之处,还请指正. 文件上传依赖包 如下所示,文件上 ...
- SpringMVC+ajax文件上传实例教程
原文地址:https://blog.csdn.net/weixin_41092717/article/details/81080152 文件上传文件上传是项目开发中最常见的功能.为了能上传文件,必须将 ...
- springmvc图片文件上传接口
springmvc图片文件上传 用MultipartFile文件方式传输 Controller package com.controller; import java.awt.image.Buffer ...
- SpringMVC学习--文件上传
简介 文件上传是web开发中常见的需求之一,springMVC将文件上传进行了集成,可以方便快捷的进行开发. springmvc中对多部件类型解析 在 页面form中提交enctype="m ...
- Spring +SpringMVC 实现文件上传功能。。。
要实现Spring +SpringMVC 实现文件上传功能. 第一步:下载 第二步: 新建一个web项目导入Spring 和SpringMVC的jar包(在MyEclipse里有自动生成spring ...
- Web---演示Servlet的相关类、表单多参数接收、文件上传简单入门
说明: Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数. ServletContext – 代表整个Web项目. ServletRequest – 代 ...
- SpringMVC之文件上传异常处理
一般情况下,对上传的文件会进行大小的限制.如果超过指定大小时会抛出异常,一般会对异常进行捕获并友好的显示出来.以下用SpringMVC之文件上传进行完善. 首先配置CommonsMultipartRe ...
- springmvc实现文件上传
springmvc实现文件上传 多数文件上传都是通过表单形式提交给后台服务器的,因此,要实现文件上传功能,就需要提供一个文件上传的表单,而该表单就要满足以下3个条件 (1)form表彰的method属 ...
随机推荐
- 【转】Hive导入10G数据的测试
原博文出自于: http://blog.fens.me/hadoop-hive-10g/ 感谢! Hive导入10G数据的测试 让Hadoop跑在云端系列文章,介绍了如何整合虚拟化和Hadoop,让H ...
- int* V.S. int[]
[int* V.S. int[]] 在C++中,int[]有2种形态,一种是指针形态,即使用方法和int*一样,另一种是符号形态,即只是一个编译期的符号(意味着在runtime期,所定义的int[]根 ...
- JDBC 与 ODBC 区别
一. 二.
- MVC 小常识
什么是MVC (模型 视图 控制器)? MVC是一个架构模式,它分离了表现与交互.它被分为三个核心部件:模型.视图.控制器.下面是每一个部件的分工: 视图是用户看到并与之交互的界面. 模型表示业务数据 ...
- 网页打印时设置A4大小
最近开发项目时遇到了网页打印的问题,这是问题之二,打印宽度设置 在公制长度单位与屏幕分辨率进行换算时,必须用到一个DPI(Dot Per Inch)指标. 经过我仔细的测试,发现了网页打印中,默认采用 ...
- 转载:mysql update更新带子查询的实现方式
出自:http://576017120.iteye.com/blog/1947154 mysql中更新时不能直接将更新的表作为查询的表,可以通过临时中间表的形式. 总结一下: 一:单表更新时 例如: ...
- Java面试试题
第一,谈谈final, finally, finalize的区别.最常被问到. 第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以impl ...
- 微价值:专訪《甜心爱消除》个人开发人员Lee,日入千元!
[导语]我们希望能够对一些个人开发人员进行专訪,这样大家更能显得接地气,看看人家做什么,怎么坚持.<甜心爱消除>作者Lee是三群的兄弟,也关注微价值.微价值的文章还是能够的,得到一些业内大 ...
- jQuery进行DOM操作记录
1.在元素内部插入DOM元素 ①插入到元素内部原有元素之后 append(content) 返回值:jQuery 参数-content:要插入的元素String,Element,jQuer ...
- 在ASP.NET中支持断点续传下载大文件(ZT)
IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头. 一. 两个必要响应头Accept-Ranges.ETag 客户端每次提交 ...