Uploadify上传Excel到数据库
前两章简单的介绍了Uploadify上传插件的基本使用和相关的属性说明。这一章结合Uploadify+ssh框架+jquery实现Excel上传并保存到数据库。
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
public class UploadAction { private File uploadFile;// 封装文件属性 private String uploadFileFileName;// 文件名称 private String msg; private StudentService studentService; public String upload() { try { String extName = ""; String newFileName = ""; // 设置传入的文件的编码 HttpServletResponse response = ServletActionContext.getResponse(); response.setCharacterEncoding("utf-8"); // 服务器目录 String targetDirectory = ServletActionContext.getServletContext() .getRealPath("/upload"); // 获取扩展名 if (uploadFileFileName.lastIndexOf(".") >= 0) { extName = uploadFileFileName.substring(uploadFileFileName .lastIndexOf(".")); } // 设置上传文件的新文件名 String nowTime = new SimpleDateFormat("yyyymmddHHmmss") .format(new Date());// 当前时间 newFileName = nowTime + extName; // 生成上传的文件对象 File targetFile = new File(targetDirectory, newFileName); // 文件已经存在删除原有文件 if (targetFile.exists()) { targetFile.delete(); } // 复制file对象上传 FileUtils.copyFile(uploadFile, targetFile); // 上传数据到数据库 msg = studentService.doUploadStudentData(targetFile); // 删除上传数据 targetFile.delete(); } catch (Exception e) { e.printStackTrace(); msg = "上传出现异常!"; } return "success_upload"; } |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
public String doUploadStudentData(File file) { Workbook wb = null; Sheet sheet = null; String value = null; Row row = null;// 表格行 Student stu = null; String msg = null;// 返回消息 int count = 0;// 成功上传条数 try { // 将文件转成文件输入流 InputStream is = new FileInputStream(file); // 判断Excel版本 if (file.getName().toUpperCase().endsWith(".XLSX")) { wb = new XSSFWorkbook(is);// Excel 2007 } else { wb = new HSSFWorkbook(is);// Excel 2003 } FormulaEvaluator formulaEvaluator = wb.getCreationHelper() .createFormulaEvaluator();// 解析公式结果 // 获得第一个表格页 sheet = wb.getSheetAt(0); System.out.println(sheet.getLastRowNum() + "记录长度"); // 遍历数据 for (int j = 1; j <= sheet.getLastRowNum(); j++) { stu = new Student(); // 获取某一行 row = sheet.getRow(j); stu.setId(row.getRowNum()); // 姓名 value = ExcelUtil.getValue(row.getCell(0), formulaEvaluator); if (StringUtils.isNotBlank(value)) { stu.setName(value); } // 年龄 value = ExcelUtil.getValue(row.getCell(1), formulaEvaluator); if (StringUtils.isNotBlank(value)) { stu.setAge(value.indexOf(value)); } // 性别 value = ExcelUtil.getValue(row.getCell(2), formulaEvaluator); if (StringUtils.isNotBlank(value)) { stu.setSex(value); } // 家庭住址 value = ExcelUtil.getValue(row.getCell(3), formulaEvaluator); if (StringUtils.isNotBlank(value)) { stu.setAddress(value); } // 联系方式 value = ExcelUtil.getValue(row.getCell(4), formulaEvaluator); if (StringUtils.isNotBlank(value)) { stu.setPhone(value.indexOf(value)); } // 兴趣 value = ExcelUtil.getValue(row.getCell(5), formulaEvaluator); if (StringUtils.isNotBlank(value)) { stu.setLikedo(value); } count++; this.studentDao.createOrUpdate(stu); } msg = "数据上传成功,一共上传" + count + "条!"; } catch (Exception e) { e.printStackTrace(); msg = e.getMessage(); } return msg; } |



原创文章,转载请注明: 转载自java开发者
本文链接地址: Uploadify上传Excel到数据库
Uploadify上传Excel到数据库的更多相关文章
- sql server使用sql语句上传Excel到数据库
USE pro GO SELECT * INTO temp_budget_price@201704170950 FROM OPENDATASOURCE('Microsoft.Jet.OLE ...
- 上传excel数据到数据库中
上传excel表格数据到数据库 导入固定路径下的excel数据到数据库 <form id="disposeFlightDataForm" action="../up ...
- postman上传excel,java后台读取excel生成到指定位置进行备份,并且把excel中的数据添加到数据库
最近要做个前端网页上传excel,数据直接添加到数据库的功能..在此写个读取excel的demo. 首先新建springboot的web项目 导包,读取excel可以用poi也可以用jxl,这里本文用 ...
- Django上传excel表格并将数据写入数据库
前言: 最近公司领导要统计技术部门在各个业务条线花费的工时百分比,而 jira 当前的 Tempo 插件只能统计个人工时.于是就写了个报表工具,将 jira 中导出的个人工时excel表格 导入数据库 ...
- jsp+servlet上传excel并将数据导入到数据库表的实现方法
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- 使用ocupload和POI一键上传Excel并解析导入数据库
使用的工具如下: JQuery ocupload jquery.ocupload-1.1.2.js Apache POI poi-3.9.jar 如果是Maven项目添加依赖如下: <depe ...
- Uploadify 上传文件插件详解
Uploadify 上传文件插件详解 Uploadify是JQuery的一个上传插件,实现的效果非常不错,带进度显示.不过官方提供的实例时php版本的,本文将详细介绍Uploadify在Aspnet中 ...
- java的poi技术下载Excel模板上传Excel读取Excel中内容(SSM框架)
使用到的jar包 JSP: client.jsp <%@ page language="java" contentType="text/html; charset= ...
- jquery的uploadify上传jsp+servlet
1.准备材料:下载jquery.uploadify上传js 注意:这个上传在firefox下会出现问题如果你在项目中加了拦截器,因为session会丢失,所以你可以传参的时候带上你所需要的条件,在 ...
随机推荐
- 全7 天玩转 ASP.NET MVC — 第 2 天
0. 前言 我相信在开始第 2 天的学习时,你已经顺利地完成了第 1 天的课程. 我们回顾一下第 1 天的主要关注点: 为什么选择 ASP.NET MVC ? ASP.NET Webforms 和 A ...
- vc++ 获取当前用户名
#include<afxwin.h> #include <stdio.h> int main(void) { char userName[MAX_PATH]; unsigned ...
- (转)排列算法 Permutation Generation
转自:http://www.cnblogs.com/dragonpig/archive/2010/01/21/1653680.html http://www.notesandreviews.com/p ...
- robotframework 测试工具添加PDF文件内容匹配插件
robotframework 这个需要了解的请度娘.本文实现的是一个小功能.大体分为如下几个步骤 1)给定一个pdf文件. 2)读取pdf文件内容,并解析为文本内容. 3)通过给定的内容,比对pdf ...
- POJ 2182
#include <iostream> #define MAXN 8005 using namespace std; int _m[MAXN]; int main() { //freope ...
- 使用MbrFix.exe修复MBR分区表
在卸载linux Ubuntu之前,先修复MBR,然后再删除Linux分区就可以了.而MbrFix.exe 就是这样一个Windows 修复MBR的应用程序软件,MbrFix.exe 不仅支持Wind ...
- Visual Studio 自定义控件不显示在工具箱
工具=>选项=>Windows窗体设计器=>常规=>AutoToolBoxPopulate=>True
- PHP5.4最新特性
PHP5.4最新特性 官网:ChangeLog-5.php#5.4.0 原文Oracle:LAMP 体系有了新的竞争,但此版本中的特性使 PHP 再次挑战极限. 稍微做了修改.: 概述总结:1. ...
- Combination Sum III
https://leetcode.com/problems/combination-sum-iii/ Find all possible combinations of k numbers that ...
- Java多线程-线程的调度(休眠)
Java线程调度是Java多线程的核心,只有良好的调度,才能充分发挥系统的性能,提高程序的执行效率. 这里要明确的一点,不管程序员怎么编写调度,只能最大限度的影响线程执行的次序,而不能做到精准控制. ...