java uploadify 上传组件使用方法
!!!声明 1-3 是jsp页面所写内容 文中需要的util 参见百度云 http://pan.baidu.com/s/1kV0gqBt 如已失效 请加QQ1940978083
1、首先引入css,js文件
<script type="text/javascript" src="<%=path%>/js/uploadify/jquery.uploadify.min.js"></script>
<link rel="stylesheet" href="<%=path%>/js/uploadify/uploadify.css" type="text/css"></link>
2、 添加html
<form class="form-horizontal">
<div class="col-sm-6 form-group">
<input type="file" name="file_upload" id="file_upload" />
<p class="help-block">请按照模版上传文件</p>
</div>
<div class="col-md-6">
<button id="btn" class="btn btn-primary">
<a style="color:white" href="<%=path %>/document/black.xls">下载模板</a></button>
</div>
</form>
3、调用方法
$("#upload #file_upload").uploadify({
'fileObjName' : 'file',
'buttonText': '上传文件',
'swf' : '<%=path%>/lib/js/uploadify/uploadify.swf',
'uploader' : '<%=path%>/black/uploadBlack.html?jsessionid=12', //上传路径 jsessionid是为了火狐上传防止session丢失
'fileTypeDesc': 'Excel',
'auto' : true,
'formData' : {'':''},
'removeCompleted' : false,
'fileTypeExts': '*.xls;*.xlsx',
'onUploadStart' : function(file) {
$("#upload #file_upload").uploadify("settings","formData", {});
},
'onUploadSuccess' : function(file, data, response) {
//添加成功后返回的结果
}else{
//失败后的处理
}
});
4、
@RequestMapping("uploadBlack")
public void uploadBlack(String jsessionid, @RequestParam(value = "file", required = false) MultipartFile file,
HttpServletRequest req, HttpServletResponse res) throws IOException {
String path = req.getSession().getServletContext().getRealPath("upload");
String fileName = file.getOriginalFilename();
if (!fileName.endsWith(".xls") && !fileName.endsWith(".xlsx")) {
writeStringUTF(errorResult, res);
return;
}
String newName = DateUtil.dateToStringT(new Date()) + fileName;
File targetFile = new File(path, newName);
if (!targetFile.exists()) {
targetFile.mkdirs();
}
// 保存
try {
file.transferTo(targetFile);
} catch (Exception e) {
e.printStackTrace();
}
// 读取excel
ExcelImportUtil excelUtil = new ExcelImportUtil();
excelUtil.setExcelPath(targetFile.getPath());
excelUtil.setStartReadPos(1);
List<Row> rowList = excelUtil.readExcel();
if (rowList != null && rowList.size() > 0) {
if (jsessionid != null && !"".equals(jsessionid)) {
HttpSession session = MySessionContext.getInstance().getSession(jsessionid);
Domain domain = (Domain) req.getSession().getAttribute("Domainlogin");
Map<String, Object> map = blacklistservice.addBlackList(domain.getDomainid(), excelUtil, rowList);
// targetFile.delete();
if (map != null) {
writeStringUTF(objectToJson(map), res);
} else {
writeStringUTF(errorResult, res);
}
} else {
// targetFile.delete();
writeStringUTF(errorResult, res);
}
} else {
// targetFile.delete();
writeStringUTF(errorResult, res);
}
}
5、实现类
@Override
public Map<String, Object> addBlackList(long domainid,
ExcelImportUtil excelUtil, List<Row> rowList) {
/* List<Blacklist> black = blacklist.findAll("from Blacklist");
Map<String, Blacklist> usersMap = new HashMap<String, Blacklist>();
for (Blacklist b : black) {
usersMap.put(b.getNumber(), b);
}*/
Timestamp startTime = new Timestamp(new Date().getTime());
String[] title = new String[] {"number" };
Map<String, Object> result = new HashMap<String, Object>();
if (rowList != null && rowList.size() > 0) {
for (Row row : rowList) {
Blacklist black1 = new Blacklist();
//StringBuffer info = new StringBuffer();
for (int i = 0; i < title.length; i++) {
// info.append(excelUtil.getCellValue(row.getCell(i))+";");
System.out.println(excelUtil.getCellValue(row.getCell(i)));
if(excelUtil.getCellValue(row.getCell(i))==null&&excelUtil.getCellValue(row.getCell(i))==""){
result.put("result", "false");
return result;
}
black1.setNumber(excelUtil.getCellValue(row.getCell(i)));
black1.setDomainid(domainid);
black1.setCreatetime(startTime);
}
blacklist.save(black1);
}
result.put("result", "ok");
/* result.put("sucNum", orders.size());
result.put("errNum", notUserSize);*/
return result;
}else{
result.put("result", "false");
/*result.put("sucNum", 0);
result.put("errNum", rowList.size());*/
return result;
}
}
java uploadify 上传组件使用方法的更多相关文章
- jeecg使用uploadify上传组件
在jeecg框架的系统内使用uploadify组件进行上传操作,有时无法正常发送请求,一直被重定向到登录请求,有可能使系统对上传操作进行了过滤,需要将这个上传请求放到非拦截序列里,才能正常使用. 第二 ...
- 使用jquery插件uploadify上传文件的方法与疑问
我是学生一枚,专业也不是计算机,但又要用到很多相关技术,所以在技术基础不牢靠的情况下,硬着头皮在做.最近在做一个小项目需要上传图片,而且是需要用ajax的方式.但是利用jquery的ajax方法总会有 ...
- 共有19款Java 文件上传组件开源软件
http://www.oschina.net/project/tag/139/fileupload?lang=19&sort=view
- ASP中文件上传组件ASPUpload介绍和使用方法
[导读]要实现该功能,就要利用一些特制的文件上传组件.文件上传组件网页非常多,这里介绍国际上非常有名的ASPUpload组件 1 下载和安装ASPUpload 要实现该功能,就要利用一些特制的文件上 ...
- 从零开始编写自己的C#框架(23)——上传组件使用说明
文章导航 1.前言 2.上传组件功能说明 3.数据库结构 4.上传配置管理 5.上传组件所使用到的类 6.上传组件调用方法 7.效果演示 8.小结 1.前言 本系列所使用的是上传组件是大神July开发 ...
- java上传组件commons-fileupload的一些使用方法
在 http://www.apache.org,下载commons-fileupload-1.2.1.jar包,并把这个包加到工程中,以下是记录这个上传组件的一些使用方法. html测试页面,实现上传 ...
- java深入探究10-文件上传组件FileUpload,邮件开发
1.文件上传组件FileUpload 1)java提供了文件上传的工具包 需要引入:commons-fileupload-1.2.1.jar(文件上床组件核心包) commons-oi-1.4(封装了 ...
- jQuery.uploadify文件上传组件实例讲解
1.jquery.uploadify简介 在ASP.NET中上传的控件有很多,比如.NET自带的FileUpload,以及SWFUpload,Uploadify等等,尤其后面两个控件的用户体验比较好, ...
- java基础篇---文件上传(组件)
转载自:http://www.cnblogs.com/oumyye/p/4234969.html 文件上传几乎是所有网站都具有的功能,用户可以将文件上传到服务器的指定文件夹中,也可以保存在数据库中,本 ...
随机推荐
- Linux下Python编译安装
1.安装python3 1.1下载python源码包 网址:https://www.python.org/downloads/release/python-362/ 下载地址:https://www. ...
- Golang环境配置Centos
1.下载go程序包( go1.7rc1.linux-amd64.tar.gz)(http://www.golangtc.com/static/go/1.7rc1/go1.7rc1.linux-am ...
- php如何实现文件下载
php如何实现文件下载 1. 设置超链接的href属性 <ahref="文件地址"></a> 如果浏览器不能解析该文件,浏览器会自动下载.而如果文件是图片或 ...
- sublime text3前端常用插件
安装Package Control 在安装插件之前,需要让sublime安装Package Control.打开Sublime Text的控制台,快捷键ctrl + ~,在控制台中输入以下代码. im ...
- 路飞学城-Python开发-第一章
# 基础需求: # 让用户输入用户名密码 # 认证成功后显示欢迎信息 # 输错三次后退出程序 username = 'pandaboy' password = ' def Login(username ...
- SPA SEO SSR三者有什么区别
SPA通俗的说就是单页面应用(single page application) 优点 页面之间的切换非常快 一定程度减少了后端服务器的压力 后端程序只需要提供api,不需要客户端到底是web端还是手机 ...
- Linux重新命名文件夹
linux 重命名文件和文件夹 linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹. 例子:将目录A重命名为B mv A B 例子:将/a目录移动到/b下,并重命名为c ...
- python 之 MRO 异常
今天突然遇到这个异常,先贴两个地址,待有时间写博客 https://www.jianshu.com/p/fea6e0a0cc14 https://makina-corpus.com/blog/meti ...
- (QT)在命令行编译ui文件和程序
1.新建helloworld_2文件夹,将helloworld里的main.cpp和hellodialog.cpp两个文件复制过来. 2.打开控制台.此时不能用cmd,否则不能出最后的结果(lz在运行 ...
- docker环境下mysql参数修改
原文:docker环境下mysql参数修改 需要修改log_bin为on,看了好几个博客说都需要删掉容器重新生成,然而并非如此, 我们可以用docker cp 命令将docker的文件"下载 ...