05_Excel操作_03_模拟Web环境的Excel导入
【思路简述】
本文继续上一篇文章,上一篇中生成了“D://用户列表.xls”的excel文件,我们接下来将这个excel导入,然后显示在控制台上。
工程什么的都同上一篇文章,只是在ExcelService.java中添加了一个inputExcel()的方法,如下:
【ExcelService.java】
@Test
public void inputExcel(){
File userExcel=new File("D:\\用户列表.xls");
try {
FileInputStream fileInputStream =new FileInputStream(userExcel);
//1.读取工作簿
Workbook workbook=WorkbookFactory.create(userExcel);
//2.读取工作表
Sheet sheet=workbook.getSheetAt(0);
//读取行
if(sheet.getPhysicalNumberOfRows()>2){ //读取Excel的行数
//读取单元格,存入User对象中
User user =null;
Row row=null;
for(int i=2;i<sheet.getPhysicalNumberOfRows();i++){ //从第3行开始读取,前两行都是标题
//3.读取行
row=sheet.getRow(i); //第i行
user=new User();
//4.读取单元格
Integer id=Integer.valueOf(row.getCell(0).getStringCellValue());
user.setId(id);
String name=row.getCell(1).getStringCellValue();
user.setName(name);
String sex=row.getCell(2).getStringCellValue();
user.setSex(sex);
String phone;
try {
phone =row.getCell(3).getStringCellValue();
} catch (Exception e) {
System.out.println("科学计数......");
//排除 Excel单元格科学计数的时候提取数据错误
double dPhone=row.getCell(3).getNumericCellValue();
//BigDecimal将科学计数方式的数值转化成一个正常的数值并转换成字符串
phone=BigDecimal.valueOf(dPhone).toString();
}
user.setPhone(phone); String email=row.getCell(4).getStringCellValue();
user.setEmail(email); //正常的话在这里会有一句执行插入数据库的操作
System.out.println(user.toString());
}
}
workbook.close();
fileInputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
【运行结果】
在控制台上(对了,要在User.java中补充一个toString()方法):

05_Excel操作_03_模拟Web环境的Excel导入的更多相关文章
- 05_Excel操作_02_模拟Web环境的User列表导出
[思路解释] 在正式上到WebProject之前,准备模拟一下WebProject后台的导出流程. 主要都写在ExcelService层,在Excel的Service层,首先要获得UserList,即 ...
- 利用 Apache Synapse 模拟 Web 服务
Apache Synapse 是一个简单.轻量级的高性能企业服务总线 (ESB),它是在 Apache Software Foundation 的 Apache License Version 2.0 ...
- 模拟web服务器 (小项目) 搭建+部署
模拟web服务器:可以从浏览器中访问到自己编写的服务器中的资源,将其资源显示在浏览器中. 技术选型: corejava 线程池 同任务并发执行 IO流 传递数据 客户端也会像服务端发送数据, 服务器像 ...
- ubuntu14.04安装及web环境的搭建
在进行接下来的工作之前首先得准备一个Ubuntu的启动U盘以及腾出一个至少50G的系统盘(在网上看到有人用20G的,不知道效果怎么样).关于Ubuntu启动U盘大家可以参考这个帖子 http://ti ...
- 重新想象 Windows 8 Store Apps (70) - 其它: 文件压缩和解压缩, 与 Windows 商店相关的操作, app 与 web, 几个 Core 的应用, 页面的生命周期和程序的生命周期
[源码下载] 重新想象 Windows 8 Store Apps (70) - 其它: 文件压缩和解压缩, 与 Windows 商店相关的操作, app 与 web, 几个 Core 的应用, 页面的 ...
- 在linux CentOS6上安装web环境
感谢浏览,欢迎交流=.= 都说linux作为服务器优于window,近期也是学习了下linux. win7下安装了linux虚拟机,购买linux阿里云主机,开启linux之旅. 进入正题,在linu ...
- linux服务器WEB环境一键安装包lanmp教程之五
在我们安装了linux服务器WEB环境一键安装包lanmp后,可能会有不少疑问还有就是使用过程中出现的问题,下面为大家总结几点比较常见的,如若还有其他疑问,可到wdlinux论坛寻找相关教程. 1.增 ...
- 使用Docker搭建简易的 Java Web 环境
 从[<从最简单的入手学习 Docker ...
- C# httpclient获取cookies实现模拟web登录
目前在公司做一款平台化的产品,我主要负责PC端上的开发,在产品推荐过程中为了节省开发时间很多功能模块没来得及做原生,用CEF嵌入了很多带功能web页面,与客户端进行交互从而实现功能. 在二期开发中,产 ...
随机推荐
- 决策树及其python实现
剪枝 由于悲观错误剪枝 PEP (Pessimistic Error Pruning).代价-复杂度剪枝 CCP (Cost-Complexity Pruning).基于错误剪枝 EBP (Error ...
- linux多线程大神博客网址
http://blog.csdn.net/zjf280441589/article/details/43883055
- Weka 入门3
这次我们介绍Evaluation类.在上一次中我们只是单纯的预测了分类值,并没有其他评价数据.这场我们使用Evalution类.首先初始化一个Evaluation对象,Evaluation类没有无参的 ...
- Drupal安装及使用问题解决列表
#1. 启动 Clean URL 修改Apache的配置文件(如httpd.conf),打开 LoadModule rewrite_module modules/mod_rewrite.so选项.然后 ...
- mybatis的$存在安全问题,为什么又不得不用?
1.mybatis的官网关于$和#的字符串替换符号区别描述如下: http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html#Parameters 上面的意 ...
- EasyUI Datagrid 自定义列、Foolter及单元格编辑
1:自定义列,包括 Group var head1Array = []; head1Array.push({ field: 'Id', title: 'xxxx', rowspan: 2 }); he ...
- [ES6] 21. ESNext, ES6-Shim & Node
ES-Next: Esnextis similar to traceur, you can use command line to compile files. Install: npm instal ...
- careercup-树与图 4.7
4.7 设计并实现一个算法,找出二叉树中某两个结点的第一个共同祖先.不得将额外的结点储存在另外的数据结构中.注意:这不一定是二叉查找树. 解答 本题的关键应当是在Avoid storing addit ...
- Xcode 4-PBXcp error修复-No such file or directory
Xcode 4-PBXcp error修复-No such file or directory (2013-05-02 15:20:50) 转载▼ 标签: apple iphone ios 移动开发 ...
- UDID
大多数应用都会用到苹果设备的UDID号,UDID通常有以下两种用途: 1)用于一些统计与分析目的:[第三方统计工具如友盟,广告商如ADMOB等] 2)将UDID作为用户ID来唯一识别用户,省去用户名, ...