smartupload java_smartupload实现文件上传

还是遵循以往的学习方法,搭建自己的java知识体系,努力提高学习的能力。在java世界里面存在着很多开源的东西,新技术,新产品随时都可能到来。JavaSE算是有一个非常不错的API,但是还有大多数的开源Jar包没能有一个很好的组织格式的开发文档,因此自学起来非常不易,所以尝试了一下使用Smartupload组件。

首先要说的是网上到处都是jspsmartupload和smartupload的包和讲解问档。多数都是直接将其中的类简单的描述了一些,个人觉得这些对于熟悉java开发的人来说,用处不大。

还有一个问题是:关于smartupload的包放在什么地方。 在开发工具中如MyEclipse或者Eclipse中Build-path然后Configure-build-path然后add-extends-jar这样就可以了。至于在Tomcat目录下的复杂配置查看此文

图片上传最终还是成功了,使用的是魔乐科技李兴华老师提供的smartupload包。

上传文件的步骤:

1.实例化SmartUpLoad实例

2.初始化上传操作

3.准备上传文件

4.上传文件

在jsp页面导入包特别重要。

文件上传可以是单个文件也可以是多个文件,至于方法的使用在开发工具中虽然不能看到源代码,但是每一个类的方法和属性都是可以看到了,结合JavaSE的API基本上都可以猜测和测试出每一个方法的基本功能,还有谷歌和百度在手边问题迎刃而解。

还是遇到了一些问题:

1.文件存放的路径,Web服务器的Webpps目录下用户自己建立的上传文件存储目录

2.获得上传文件的目录:

String realPath = application.getRealPath(File.separator

+ File.separator + "upload" + File.separator

+ File.separator);

System.out.println(realPath);

3.还可以直接使用新建的上传文件目录即可。

smart.save(realPath);

//smart.save("upload");

同样可以通过。

4.上传文件时同名文件会覆盖,解决办法是对每一个上传文件重命名。可以使用时间,IP,随机数共同产生一个字符串来作为文件名

5.在smartupload

有File和Files类,因为在生成新的文件名时使用到了File.separator导致文件操作不正确,知识问题出现是因为导入包是出现了同名类,使用java.io.File.separator最终解决了该问题。

6.产生新的文件名标识和文件上传的文件路径

//获取上传的文件的扩展名

File f=fs.getFile(i);

String ext = f.getFileExt();

//使用时间戳生成的文件名

String upFileName = its.getIPTimeRand();

//使用原文件的扩展名,上传后的文件全名

String realFileName = upFileName +"."+ ext;

System.out.println(realFileName);

System.out.println(this.getServletContext().getRealPath("/") + "upload"

+ java.io.File.separator + realFileName);

使用到时间戳标识来产生一个唯一表示文件的文件名。

7.在网上看到一篇文章中写到使用Smartupload包但是使用的方法很多在在smartupload包中没能找。

8.http://www.jspsmartupload.com网站已经关闭。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值