惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Simon Willison's Weblog
Simon Willison's Weblog
P
Privacy International News Feed
www.infosecurity-magazine.com
www.infosecurity-magazine.com
T
Troy Hunt's Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
Attack and Defense Labs
Attack and Defense Labs
S
Secure Thoughts
V2EX - 技术
V2EX - 技术
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
O
OpenAI News
Cloudbric
Cloudbric
Google Online Security Blog
Google Online Security Blog
Schneier on Security
Schneier on Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Help Net Security
Help Net Security
Cyberwarzone
Cyberwarzone
G
GRAHAM CLULEY
L
Lohrmann on Cybersecurity
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Spread Privacy
Spread Privacy
NISL@THU
NISL@THU
N
News and Events Feed by Topic
T
Tenable Blog
S
Security @ Cisco Blogs
N
News and Events Feed by Topic
The Hacker News
The Hacker News
C
CXSECURITY Database RSS Feed - CXSecurity.com
宝玉的分享
宝玉的分享
月光博客
月光博客
酷 壳 – CoolShell
酷 壳 – CoolShell
美团技术团队
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google DeepMind News
Google DeepMind News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Tailwind CSS Blog
V
Visual Studio Blog
P
Proofpoint News Feed
Webroot Blog
Webroot Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 三生石上(FineUI控件)
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Jina AI
Jina AI
雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
Hugging Face - Blog
Hugging Face - Blog
腾讯CDC
L
LangChain Blog
The Register - Security
The Register - Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 聂微东

博客园 - 李小鱼

日语学习网站 大连的夜 郁闷的每一天!!!! .net关于给数据库传参 j2ee视频下载地址 java学习网站 (原)关于存储过程事务的写法 (转)java关于split分割字符串,空的字符串不能得到的问题 (转)判断浏览器的js代码 (转)一段操作Select的JS代码 命令行下的电影 一些功能实现事例 (转)关于乱码问题 关于google查询时 输入框下边显示结果的效果 (转)老紫竹的几句话 (转)Tomcat是如何配置的 (转)Tomcat是如何配置的 (转)关于数据库连接池的形象比喻
(转)带进度条的文件上传(java+ajax,附源码)
李小鱼 · 2008-07-14 · via 博客园 - 李小鱼

拜读ahxu兄关于上传文件显示进度的文章,理解了其原理,由于ahxu兄那个不开源,所以为了以后扩展,只好自己写了,否则我是不会重新发明轮子的。
  首先,去apache的官网下了个最新的commons-fileupload-1.1.1.jar及其源码,看了一下,发现与原来的版本有些出入,仔细看了看commons-fileupload-1.1.1的源代码,理解了其整个过程,在inputStream那做下手脚,就可以取到进度了,这里,要感谢ahxu兄的贡献。
  ok,开始进入正题,新版本中,用的是ServletFileUpload,看了下源码,写一个与其相似的类,只是重写了parseRequest方法,以及附加一些从ahxu兄那抠出来的方法。
  在写代码的时候,还要用到关于servlet的包servlet-api.jar。
  写完后调试的过程中,老报错:java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFileOutputStream,后来一查才知道少了commons-io-1.2.jar,加上后,就ok了。
  关于获取及显示进度部分,用了我原来自己写的一个ajax的应用架构,从中抽取了部分代码出来,注意,js文件只适用于UTF-8编码的页面,因为现在我只写UTF-8编码的页面了,国际化方便。
  下面给个截图出来

下面给出源码:
  处理文件上传的
  使用的例子
  progressUpload.jar中,包含了commons-fileupload-1.1.1.jar,servlet-api.jar,commons-io-1.2.jar,在progressUpload.jar中,还包含一个属性文件,里面是一些默认配置,可根据自己的需要修改。
  由于有源码,怎么用可以自己看源码,此外,那个例子中也写了,在此不再赘述。例子中只取到了FileItem,再将item保存一下就ok了,示例代码:

File upFile = new File(remoteFilePath);
                
try
                {
                    item.write(upFile);
                    fileInfo.put(
"infotip""上传成功.");
                }
                
catch (java.lang.Exception e)
                {
                    fileInfo.put(
"infotip""上传失败.");
                }

  有什么新的想法,欢迎大家留言给我,一起把这个东东做好,发展,才是硬道理。
代码请到http://blog.csdn.net/pangpangde/archive/2006/08/09/1042741.aspx下载