文档章节

api接口简明,比Apache Common File Upload速度快、稳定性高,无需任何第三方库的上传组建

lgscofield
 lgscofield
发布于 2015/06/26 13:53
字数 429
阅读 26
收藏 0
点赞 0
评论 0
fastupload根据RFC 1867文档规范,编写的基于表单文件上传的组件,支持表单多文件上传,二进制文件与文本文件分开处理,彻底解决上传文本文 件编码问题,支持文件上传大小限制,支持文件上传进度计算,api接口简明,比Apache Common File Upload速度快、稳定性高,无需任何第三方库的支持。

完整的功能列表:
    1.    支持上传多个文件
    2.    支持sub-boundary
    3.    提供“一次性”的编码解决方案
    4.    支持单个上传文件大小限制,支持上传请求大小限制
    5.    支持文件上传进度
    6.    速度快,内存占用小,稳定性高

在fast upload 0.31版本中,增加了HttpMemoryUploadParser类,对multipart/form-data请求中非文件类型的数据处理,这个类处理上传请求是Apache Common File Upload的3~4倍。

快速上手:
新增加的HttpMemoryUploadParser的用法,

//以UTF8编码创建内存数据工厂
        MultiPartDataFactory mpdf = new MemoryMultiPartDataFactory("utf-8");
        HttpMemoryUploadParser uploadParser = new HttpMemoryUploadParser(request, mpdf);  //创建HttpMemoryUploadParser对象
         
        List<MultiPartData> list = uploadParser.parseList();  // 解析请求

        //预先创建保存文件的路径
        File dir = new File(System.getProperty("user.home") + "/memoryupload/dump");
        dir.mkdirs();

        for (MultiPartData e : list) {
            String target = String.format("%s/%s", dir.getAbsolutePath(), e.getFileName());
            if (e.isFile()) {  //如果是文件,保存到制定目录,否则,打印出来
                e.toFile(target);
            }
            else {
                System.out.println(new String(e.getContentBuffer()));
            }
        }


[/color]
//以UTF8编码,创建DiskFileFactory,指定文件保存的路径用当前用户的home目录
        DiskFileFactory dff = new DiskFileFactory(System.getProperty("user.home") + "/fastupload/", "utf-8");
        HttpFileUploadParser parser = new HttpFileUploadParser(request, dff);
        parser.parse();  //解析,并保存文件到dff对象所指定的目录下

本文转载自:http://lgscofield.iteye.com/blog/1651480

共有 人打赏支持
lgscofield

lgscofield

粉丝 20
博文 105
码字总数 63036
作品 0
南京
架构师
fastupload 0.3.1 发布

fastupload根据RFC 1867文档规范,编写的基于表单文件上传的组件,支持表单多文件上传,二进制文件与文本文件分开处理,彻底解决上传文本文 件编码问题,支持文件上传大小限制,支持文件上传...

仪山湖 ⋅ 2012/08/21 ⋅ 2

Fastupload 0.4.2 发布

更新:fastupload 0.4.2支持文件上传过滤机制,在解析multipart/form-data请求数据过程中,如果发现boundary内的content-header不符合设定的规则,fastupload组件直接跳过这个boundary。相比...

仪山湖 ⋅ 2012/10/19 ⋅ 1

表单文件上传组件--Fastupload

根据RFC 1867文档规范,编写的基于表单文件上传的组件,支持表单多文件上传(目前暂不支持子边界多文件),二进制文件与文本文件分开处理,彻底解决上传文本文件编码问题,支持文件上传大小限...

仪山湖 ⋅ 2012/05/25 ⋅ 3

Fastupload 0.4.7 发布,支持 struts2

Fastupload 0.4.7这个版本中主要增加了支持struts2的文件上传功能的“插件”,修复了解析IE7,IE8下某些版本上传的请求数据中文件名问题(这里感谢lkclkc 网友报的bug及提供的解决思路)。 ...

仪山湖 ⋅ 2012/10/28 ⋅ 1

Fastupload 0.3.5 发布,Java 文件上传组件

Fastupload 0.3.5 悄然发布,下载地址: http://sourceforge.net/projects/fastupload/files/ Fastupload 是根据RFC 1867文档规范,编写的基于表单文件上传的组件,支持表单多文件上传(目前...

仪山湖 ⋅ 2012/09/02 ⋅ 4

Fastupload 0.6.3 发布,表单文件上传组件

Fastupload-0.6.3 版本主要增强了对RFC1867规范中ENCTYPE相关规定的灵活解析,力求符合规范,但不拘泥于规范,降低移动设备端的开发难度。 另外,对于字符集解析的规则,做了小幅度调整,按照...

仪山湖 ⋅ 2014/10/11 ⋅ 6

Fastupload 0.2.3 发布

fastupload 0.2.3发布,增加了对sub-boundary的支持,修复了一个在0.1.1版本中发现的可能因为数据块末尾不包含完整上传文件信息的bug,需要JDK1.5及以上版本。 完整的功能列表: 支持上传多个...

仪山湖 ⋅ 2012/07/08 ⋅ 0

IKPHP官网/IKSNS

[写在最前] 感谢大家使用IKPHP!IKPHP对我来说是一个很有意义的产品,因为她能让开发者和最终用户都能受益。作为一个开源产品,希望大家都能参与进来为IKPHP添砖加瓦,IKPHP团队一直都在致力...

IKPHP官网 ⋅ 2014/04/09 ⋅ 0

开发手记OSSC-阿里云开发存储服务(OSS)的C SDK

OSSC(Aliyun Open Storage Service C SDK)是我和实验室@王维同学在2012首届阿里云开发者大赛中的参赛项目(http://2012.aliyun.com),我们作品提交是在10月2号,但是11月8号才揭晓最终结果...

大卷卷 ⋅ 2012/10/22 ⋅ 0

运维自动化管理服务器-CheungSSH

CheungSSH 是一款中国人自主研发的Linux运维自动化管理服务器软件,后端使用 Python 语言+Django 的 Web 框架,前端使用 Bootstrap+Javascript+jQuery 框架开发,通信协议采用 Linux 系统自带...

张其川 ⋅ 2015/06/10 ⋅ 21

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Spring Cloud构建微服务架构—创建“服务注册中心”

创建一个基础的Spring Boot工程,命名为eureka-server,并在pom.xml中引入需要的依赖内容: <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-par......

itcloud ⋅ 20分钟前 ⋅ 0

拖动

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>event</title> <style> #box { width: 100px; height: 100px; background-color: aquamarine; position: absolute; } </style......

fyliujj ⋅ 23分钟前 ⋅ 0

es6 polyfill array

polyfill之javascript函数的兼容写法——Array篇 1. Array.isArray(obj) if (!Array.isArray) { Array.isArray = function(arg) { return Object.prototype.toString.call(arg) === '[objec......

球球 ⋅ 25分钟前 ⋅ 0

kibana启动异常

检查一下:kibana.yml 每一对key:value中,冒号之后应有空格。

增删改查1 ⋅ 27分钟前 ⋅ 0

js修改img的src属性刷新图片时的图片缓存问题

问题:上传一张图片,通过js更新src属性刷新图片使其即时显示时, 当img的src当前的url与上次地址无变化时(只更改图片,名称不变,不同图片名称相同)图片不变化(仍显示原来的图片) 但通过...

HaierBrother ⋅ 27分钟前 ⋅ 0

Mysql

1.Jdbc Url 设置allowMultiQueries为true和false mysql的批量更新是要我们主动去设置的, 就是在数据库的连接url上设置一下,加上* &allowMultiQueries=true *即可。 参数名称 参数说明 缺省...

瑟青豆 ⋅ 30分钟前 ⋅ 0

mysql导出导入表结构与数据

当我们需要进行数据迁移时,mysql自带的mysqldump会是最好的方式。 1.导出某张表的结构和数据 首先,我们应当使用服务器,打开终端,连接到所需要导出的表所在的服务器上。执行命令: mysqld...

hengbao5 ⋅ 30分钟前 ⋅ 0

世界杯也走向“比拼”大数据的时代

《日本经济新闻》6月19日报道称,俄罗斯足球世界杯已于6月14日揭开战幕。作为第21次举办的足球世界杯,如何活用大数据有可能成为决定各支球队胜负的重要因素。从对阵球队的分析到战术建议,还...

加米谷大数据 ⋅ 31分钟前 ⋅ 0

金额转为千分制,金额转中文大写

金额转关为大写 /** 数字金额大写转换(可以处理整数,小数,负数) */ function digitUppercase(n){ if(!n) reutrn "" let fraction = ['角', '分']; let digit = [...

YXMBetter ⋅ 33分钟前 ⋅ 0

开发利器JRebel部署SpringBoot项目

不要以为年纪轻轻就跌倒了人生谷底,未来还有更大的下降空间等着你。 idea下载和安装JRebel 激活JRebel 访问https://my.jrebel.com/ 使用facebook或twitter登录 勾选 Build project automati...

郑龙飞 ⋅ 39分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部