1. 程式人生 > >jsp上傳下載+SmartUpload插件上傳

jsp上傳下載+SmartUpload插件上傳

load eight download padding 依據 pop allow rtu popu

使用之前須要自己下載jspSmartUpload.jar包

這裏找到一個支持中文的jar包,下載地址例如以下:

http://www.blogjava.net/Files/hijackwust/jsmartcom_zh_CN.rar

把壓縮包裏面的jar復制到project的lib以下就可以

主要方法介紹

上傳

// 新建一個SmartUpload對象
SmartUpload su = new SmartUpload();
// 上傳初始化
su.initialize(pageContext);
// 限制每一個上傳文件的最大長度。


su.setMaxFileSize(10000);


// 限制總上傳數據的長度。
su.setTotalMaxFileSize(20000);
// 設定同意上傳的文件(通過擴展名限制),僅同意doc,txt文件。
su.setAllowedFilesList("doc,txt");
// 設定禁止上傳的文件(通過擴展名限制),禁止上傳帶有exe,bat,
//jsp,htm,html擴展名的文件和沒有擴展名的文件。


su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 上傳文件
su.upload();
// 將上傳文件所有保存到指定文件夾
int count = su.save("/upload");




下載

// 新建一個SmartUpload對象
SmartUpload su = new SmartUpload();
// 初始化
su.initialize(pageContext);
// 設定contentDisposition為null以禁止瀏覽器自己主動打開文件,
//保證點擊鏈接後是下載文件。若不設定,則下載的文件擴展名為
//doc時。瀏覽器將自己主動用word打開它。擴展名為pdf時。
//瀏覽器將用acrobat打開。
su.setContentDisposition(null);
// 下載文件
su.downloadFile("/upload/test.doc");


**********************************************************************************************************************



應用實例:



<%@ page contentType="text/html;charset=gb2312" language="java" import="java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*,java.sql.*,com.jspsmart.upload.*,java.util.*"%>
<%
SmartUpload mySmartUpload =new SmartUpload();
long file_size_max=4000000;
String fileName2="",ext="",testvar="";
String url="upload/"; //應保證在根文件夾中有此文件夾的存在(也就是說須要自己建立對應的文件夾)
//初始化
mySmartUpload.initialize(pageContext);
//僅僅同意上載此類文件
try {
mySmartUpload.setAllowedFilesList("jpg,gif");//此處的文件格式能夠依據須要自己改動
//上載文件
mySmartUpload.upload();
} catch (Exception e){
%>
<SCRIPT language=javascript>
alert("僅僅同意上傳.jpg和.gif類型圖片文件");
window.location=‘upload.htm‘;
</script>
<%
}
try{

com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
if (myFile.isMissing()){%>
<SCRIPT language=javascript>
alert("請先選擇要上傳的文件");
window.location=‘upload.htm‘;
</script>
<%}
else{
//String myFileName=myFile.getFileName(); //取得上載的文件的文件名稱
ext= myFile.getFileExt(); //取得後綴名
int file_size=myFile.getSize(); //取得文件的大小
String saveurl="";
if(file_size<file_size_max){
//更改文件名稱,取得當前上傳時間的毫秒數值
Calendar calendar = Calendar.getInstance();
String filename = String.valueOf(calendar.getTimeInMillis());
saveurl=application.getRealPath("/")+url;
saveurl+=filename+"."+ext; //保存路徑
myFile.saveAs(saveurl,SmartUpload.SAVE_PHYSICAL);
out.print(saveurl);

String ret = "parent.HtmlEdit.focus();";
ret += "var range = parent.HtmlEdit.document.selection.createRange();" ;
ret += "range.pasteHTML(‘<img src=\"" + request.getContextPath() + "/upload/" + filename + "." + ext + "\">‘);" ;
ret += "alert(‘上傳成功!

‘);";
ret += "window.location=‘upload.htm‘;";
out.print("<script language=javascript>" + ret + "</script>");

}
}
}catch (Exception e){
out.print(e.toString());
}
%>




upload.htm

<html>
<head>
<title>請選擇上傳的圖片</title>
</head>
<body>
<table border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="45" align="center" valign="middle"><form action="uploadimage.jsp" method="post" enctype="multipart/form-data" name="form1">
<input type="file" name="file">
<input type="submit" name="Submit" value="上傳">
</form></td>
</tr>
</table>
</body>
</html>

jsp上傳下載+SmartUpload插件上傳