【原创随笔】jqUploader jsp开发事例

1,访问http://www.pixeline.be/experiments/jqUploader/下载jquery.jqUploader.1.0.2.3.zip,解压文件夹至项目中

其中的php文件及demo.html、style.css可删除,不会影响功能

2,将

<script src="js/jquery.min.js" type="text/javascript"></script>

<script type="text/javascript" src="js/jquery.jqUploader.1.0.2.3/jquery.flash.js"></script>
<script type="text/javascript" src="js/jquery.jqUploader.1.0.2.3/jquery.jqUploader.js"></script>

导入到jsp文件中,配置jqUploader

$(document).ready(function() {
$('#example1').jqUploader({
debug:0      //debug模式,1为开启
,background:''  //背景色
,barColor:'FFDD00'//进度条颜色
,maxFileSize: '1048576'  //允许文件大小
,src:'js/jquery.jqUploader.1.0.2.3/jqUploader.swf'  //swf位置
,allowedExt:'*.avi; *.jpg; *.jpeg; *.png'       //允许格式
,allowedExtDescr: '*.avi; *.jpg; *.jpeg; *.png'    //选择窗格式描述
,validFileMessage: ''                   //验证文件的描述
,endMessage: 'and don\'t you come back ;)'       
,hideSubmit: false
,endMessage:'上传成功'                    //成功后的描述
,uploadScript:'upload!upload'               //提交的服务端action
});
});
<span id="example1">
<label for="example1_field" >
Choose a file to upload:
</label>
<input name="file" id="example1_field" type="file" />
</span>

   配置结果:

3,服务端如果没用struts2可自行获取,如果用struts2的朋友,因为struts2对文件表单会进行再次封装,所以用阿帕奇的文件获取方式是不行的,只能用struts2自己的文件获取方式来获取,即声明File对象及setter和getter,效果如下

    private File filedata;
private String filename;

public void setFiledata(File filedata) {
this.filedata = filedata;
}

public File getFiledata() {
return filedata;
}

public void setFilename(String filename) {
this.filename = filename;
}

public String getFilename() {
return filename;
}

4,

public String upload() {
try {
String fileBasePath = ServletActionContext.getServletContext().getRealPath("/upload") + "\\complaint\\";
String newName = "";
if (filedata != null && filedata.length() > 0) {
String type = filename.substring(filename.lastIndexOf("."), filename.length());
newName = UUID.randomUUID().toString() + type;
File path = new File(fileBasePath);
if (!path.exists()) {
path.mkdirs();
}
path = null;
File outFile = new File(fileBasePath, newName);
if (!outFile.exists()) {
outFile.createNewFile();
}
FileInputStream in = new FileInputStream(filedata);
FileOutputStream out = new FileOutputStream(outFile);
byte[] bts = new byte[1024];
while ((in.read(bts)) != -1) {
out.write(bts);
}
in.close();
out.flush();
out.close();
}

} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}






转载于:https://www.cnblogs.com/live365wang/archive/2012/01/18/2325592.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值