JAVA 异步ajax实现xls 文件上传 并且解析xls
2016-07-20 10:09
639 查看
html:
<!--upload html-->
<input type="file" id="file" name="file" value="选择文件" />
<input type="button" value="上传" onclick="upload();"/>
<!--upload js--->
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/ajaxfileupload.js"></script>
<script type ="text/javascript">
var upload = function(){
$.ajaxFileUpload({
url: 'map/upload',
secureuri: false,
fileElementId: 'file',
dataType: 'json',
success: function (data, status){
alert("上传成功");
},
error: function (data, status, e){
alert("上传失败");
}
});
}
</script>
java:/**
* 所用jar
这里用的sping mvc 当然用其他的上传得到流也是可以的
* jxl-2.4.3.jar
* org.apache.common.io.jar
* org.apache.common.fileupload.jar
*/
//上传接收
@RequestMapping("/upload")
public void upload(HttpServletRequest request, HttpServletResponse response) throws IOException{
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
List<MultipartFile> fileList = multipartRequest.getFiles("file");
for (MultipartFile mf : fileList) {
if(!mf.isEmpty()){
parseExcel(mf);
break;
}
}
//返回json
toJson("{'status', 1}");
}
//解析表格
public void parseExcel(MultipartFile mf){
Workbook workbook = null ;
try {
workbook = Workbook.getWorkbook(mf.getInputStream());
Sheet sheet = workbook.getSheet(0);
int count = sheet.getRows();
for (int i= 1 ;i < count;i ++){
Cell[] cells = sheet.getRow(i);
System.out.println(cells);
}
}catch (Exception e){
e.printStackTrace();
} finally {
if (workbook != null ){
workbook.close();
}
}
}
原创:blog.csdn.net/qilin001cs
<!--upload html-->
<input type="file" id="file" name="file" value="选择文件" />
<input type="button" value="上传" onclick="upload();"/>
<!--upload js--->
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/ajaxfileupload.js"></script>
<script type ="text/javascript">
var upload = function(){
$.ajaxFileUpload({
url: 'map/upload',
secureuri: false,
fileElementId: 'file',
dataType: 'json',
success: function (data, status){
alert("上传成功");
},
error: function (data, status, e){
alert("上传失败");
}
});
}
</script>
java:/**
* 所用jar
这里用的sping mvc 当然用其他的上传得到流也是可以的
* jxl-2.4.3.jar
* org.apache.common.io.jar
* org.apache.common.fileupload.jar
*/
//上传接收
@RequestMapping("/upload")
public void upload(HttpServletRequest request, HttpServletResponse response) throws IOException{
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
List<MultipartFile> fileList = multipartRequest.getFiles("file");
for (MultipartFile mf : fileList) {
if(!mf.isEmpty()){
parseExcel(mf);
break;
}
}
//返回json
toJson("{'status', 1}");
}
//解析表格
public void parseExcel(MultipartFile mf){
Workbook workbook = null ;
try {
workbook = Workbook.getWorkbook(mf.getInputStream());
Sheet sheet = workbook.getSheet(0);
int count = sheet.getRows();
for (int i= 1 ;i < count;i ++){
Cell[] cells = sheet.getRow(i);
System.out.println(cells);
}
}catch (Exception e){
e.printStackTrace();
} finally {
if (workbook != null ){
workbook.close();
}
}
}
原创:blog.csdn.net/qilin001cs
相关文章推荐
- Java类收集
- Java集合源码剖析】Java集合框架
- Spring-9:Bean的生命周期
- java实现的AES加密算法完整实例
- Java 包中重要接口介绍
- Eclipse中,Open Type(Ctrl+Shift+T)失效后做法。
- Spring读写分离的四种方案
- eclipse搭建Android运行模拟器
- Thinking in Java 第17章 容器深入研究(17.1-17.7)
- java日期时间比较大小
- (JAVA+TESTNG 三)Eclipse+TestNG搭建接口自动化测试框架
- Quartz
- spring-data-jpa学习(一)环境配置1.2
- 找不到或无法加载主类
- Spring3.X企业开发实战(一):入门实例
- Maven项目,右键-update project后JRE system Library变成eclipse默认的版本
- 字符排序
- System.getProperty Java 中的使用
- Ubuntu下jdk配置
- struts2工作原理