概述
upload.jsp
var htmlHead="<dl><dt style='width: 120px; text-align: right;'>已上传的文件:</dt><dd id='fileHtmlBody'>";
var htmlBody="";
var htmlFoot="</dd></dl>";
function onComplete(event, queueId, fileObj, response, data){
var obj = eval( "(" + response + ")" );//转换为JSON对象
htmlBody+="<div id='file_"+obj.id+"' style='height:25px;line-height:25px;'>";
htmlBody+="<span style='display:none'><input type='checkbox' class='uploaded' name='fid' value='"+obj.id+"' checked/></span>";
htmlBody+="<a class='btnAttach'></a><a title='点击右键另存为' target='_blank' href='"+obj.fileurl+"'>"
+obj.filename+"</a> ("+obj.filesize+")<a href='javascript:deleteFile("+obj.id
+");'><img src='styles/dwz/uploadify/cancel.png' height='13' align='middle'/></a>";
htmlBody+="</div>";
$("#fileList").html(htmlHead+htmlBody+htmlFoot);
}
//删除文件ajax请求
function deleteFile(id){
$("#file_"+id).load("Main/post/deletefile/"+id);
$("#file_"+id).remove();
htmlBody=$("#fileHtmlBody").html();
}
//close前删除已上传的文件
function deleteUploaded(){
$(".uploaded").each(function(){
var fileid = $(this).val();
deleteFile(fileid);
});
}
------------------------------------------------------------------------
<input id="testFileInput" type="file" name="file"
uploader="styles/dwz/uploadify/scripts/uploadify.swf" //必需,uploadify使用的插件
cancelImg="styles/dwz/uploadify/cancel.png"
script="Main/post/uploadfile" //必需,上传的服务端入口
fileQueue="fileQueue" //对应下方的div,用来显示上传进度
auto="true"
onComplete="onComplete"/> //单个文件上传完成执行的js函数
<div id="fileQueue" ></div>
<div class="divider"></div>
<div id="fileList" ></div> //此块用于显示已上传完成的文件
------------------------------------------------------
Post.java
public void uploadfile(){
String saveDirectory = JFWebConfig.saveDirectory + "download";
int maxPostSize = JFWebConfig.maxPostSize; //1024*1024
UploadFile file = getFile("file", saveDirectory, maxPostSize);
String fileName = file.getFileName();
String name=fileName.substring(0,fileName.lastIndexOf('.'));
String filetype = fileName.substring(fileName.lastIndexOf('.') + 1);
String filesize = FileUtils.getFileSize(file.getFile().length());
String fileurl = "upload/" + saveDirectory + "/" + fileName;
Tab_Downloadfile df = new Tab_Downloadfile();
df.set("filename", name);
df.set("fileurl", fileurl);
df.set("filesize", filesize);
df.set("filetype", filetype);
if(df.save()){
Tab_Downloadfile lastfile = Tab_Downloadfile.dao.getLastSave();
Map<String, Object> map = new HashMap<String, Object>();
map.put("id", lastfile.getInt("id"));
map.put("filename", lastfile.getStr("filename"));
map.put("fileurl", lastfile.getStr("fileurl"));
map.put("filesize", lastfile.getStr("filesize"));
renderJson(map);
}else{
renderJson("{"statusCode":"300","message":"文件存储出错!"}");
}
}
/**删除文件*/
public void deletefile(){
int id = getParaToInt(0);
Tab_Downloadfile df = Tab_Downloadfile.dao.findById(id);
if(df!=null){
try {
File file = new File(PathKit.getWebRootPath() + "/" + df.getStr("fileurl"));
if (file.exists()) {
file.delete();
}
df.delete();
} catch (Exception e) {
e.printStackTrace();
}
}
最后
以上就是细心柠檬为你收集整理的Jfinal+DWZ使用uploadify插件实现文件上传的全部内容,希望文章能够帮你解决Jfinal+DWZ使用uploadify插件实现文件上传所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复