您的位置:首页 > Web前端 > JavaScript

jsp文件上传SmartUpload组件

2015-01-13 19:43 351 查看
SmartUpload是由www.jspsmart.com网站开发的一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的jsp文件中。该组件有以下几个特点: 

1、使用简单。在jsp文件中仅仅书写三五行java代码就可以搞定文件的上传或下载,方便。 

2、能全程控制上传。利用SmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。 

3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的文件。 

4、下载灵活。仅写两行代码,就能把web服务器变成文件服务器。不管文件在web服务器的目录下或在其它任何目录下,都可以利用SmartUpload进行下载。 

5、能将文件上传到数据库中,也能将数据库中的数据下载下来。这种功能针对的是mysql数据库,因为不具有通用性,所以本文不准备举例介绍这种用法。

本篇将讲述java常用的上传/下载组件 SmartUpload 的详细java的朋友不会陌生,几乎在所有的B/S架构的项目或者产品中都会用到文件的上传/下载。

 

 

二、SmartUpload组件使用


(1)文件上传

HTML代码

[xhtml]
view plaincopy
<%@ page contentType="text/html;charset=UTF-8"%><%@ page import="com.soft4j.httpupload4j.SmartUpload"%><%@ page import="com.soft4j.bo.WebFileMgr"%><%
String ret = null;
SmartUpload su = null;
try{
su = new SmartUpload();
su.initialize(pageContext);
su.upload();
ret = WebFileMgr.upload(su,pageContext);//WebFileMgr.java 处理文件上传
if(ret!=null){
out.print("successed");
}
}catch(Exception e){
out.print("faild");
}finally{
su = null;
}
%>


WebFileMgr.upload(su,pageContext)方法内容:

Java代码

[java]
view plaincopy

/**
* 上传方法.
* @param su
* @param pageContext
* @return
* @throws Exception
*/
public static String upload(SmartUpload su,PageContext pageContext) throws Exception {
com.soft4j.httpupload4j.File suFile = null;
int fileCount = 0;
int maxFileSize = 900;//单个文件最大为900K
String AllowedExtensions=",jpg,jpeg,gif,png,";//允许上传的文件类型
try {

for (int i=0; i<su.getFiles().getCount();i++) {
suFile = su.getFiles().getFile(i);
if (suFile.isMissing())
continue;
fileSize = suFile.getSize()/1024;//字节转换成KB
if(fileSize==0) fileSize=1;

if(maxFileSize<fileSize) throw new Exception("单个上传文件的容量不能超过["+maxFileSize+"KB]");

if (suFile.getFileExt() == null
|| "".equals(suFile.getFileExt())) {
fileExt = ",,";
} else {
fileExt = "," + suFile.getFileExt().toLowerCase() + ",";
}

if (!"".equals(AllowedExtensions)
&& AllowedExtensions.indexOf(fileExt) == -1) {
throw new Exception("您上传的文件[" + suFile.getFileName()
+ "]的类型为系统禁止上传的文件类型,不能上传!");
}

fileCount++;
}
if (fileCount==0) throw new Exception("请选择上传的文件");

StringBuffer fullFileName = null;//保存到服务器上的文件名(带路径)
for (int i=0; i<su.getFiles().getCount();i++) {
suFile = su.getFiles().getFile(i);
if (suFile.isMissing()) continue;
fullFileName = new StringBuffer("文件的路径");//填写 文件的路径
fullFileName.append("文件名");//填写 文件名
suFile.saveAs(fullFileName.toString(),SmartUpload.SAVE_PHYSICAL);
}
return "successed";
} finally {
//
}
}


上面的JSP,Java代码就可以实现文件的上传.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: