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

推荐订阅源

W
WeLiveSecurity
The GitHub Blog
The GitHub Blog
Engineering at Meta
Engineering at Meta
Microsoft Azure Blog
Microsoft Azure Blog
The Register - Security
The Register - Security
Stack Overflow Blog
Stack Overflow Blog
博客园 - 三生石上(FineUI控件)
T
Threat Research - Cisco Blogs
S
SegmentFault 最新的问题
V2EX - 技术
V2EX - 技术
Hacker News: Ask HN
Hacker News: Ask HN
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
P
Proofpoint News Feed
J
Java Code Geeks
Microsoft Security Blog
Microsoft Security Blog
M
MIT News - Artificial intelligence
AI
AI
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
P
Proofpoint News Feed
Hacker News - Newest:
Hacker News - Newest: "LLM"
B
Blog
N
News and Events Feed by Topic
N
News | PayPal Newsroom
Google DeepMind News
Google DeepMind News
酷 壳 – CoolShell
酷 壳 – CoolShell
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
WordPress大学
WordPress大学
C
Cybersecurity and Infrastructure Security Agency CISA
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - 【当耐特】
U
Unit 42
腾讯CDC
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
The Cloudflare Blog
H
Help Net Security
Recent Announcements
Recent Announcements
P
Privacy & Cybersecurity Law Blog
IT之家
IT之家
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Security Archives - TechRepublic
Security Archives - TechRepublic
L
LINUX DO - 热门话题
Martin Fowler
Martin Fowler
MongoDB | Blog
MongoDB | Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
H
Heimdal Security Blog
博客园 - 聂微东
S
Securelist
大猫的无限游戏
大猫的无限游戏
Cloudbric
Cloudbric
Cisco Talos Blog
Cisco Talos Blog

博客园 - 李小鱼

日语学习网站 大连的夜 郁闷的每一天!!!! .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下载