1、项目开发中,导入输入应该是常用的基本功能。我们经常会使用excel将数据导入到数据库,在导入之前必须得将excel数据转换成javaBean对象

2、由于此功能经常使用,所以开发此工具类方便日后轻松完成输入导入与转换功能

要求:excel中必须有标题栏,标注每个字段的意义 如:

与此excel对应的javabean对象为:

/**

 * 用户基本信息测试

 * 

 * @author cml

 * 

 */

public class User

{

private String username;

private int id;

private String name;

private Date birthday;

private long height;

private double salary;

//省略set get方法

}

在使用测试类的时候我们只需要注明bean中的属性与excel标题栏哪一列对应即可,不要求excel中列的顺序关系。

先运行工具类:

Map<String, String> header = new HashMap<String, String>();

header.put("编号", "id");

header.put("用户名", "username");

header.put("姓名", "name");

header.put("生日", "birthday");

header.put("身高", "height");

header.put("工资", "salary");

ExcelImport export = new ExcelImport(header);

export.init(new File("src/user.xls"));

List<User> users = export.bindToModels(User.class, true);

if (export.hasError())

{

System.out.println(export.getError().toString());

}

可以在后台看到控制信息:

[DEBUG]---[ExcelImport]加载标题栏:编号

[DEBUG]---[ExcelImport]加载标题栏:用户名

[DEBUG]---[ExcelImport]加载标题栏:姓名

[DEBUG]---[ExcelImport]加载标题栏:生日

[DEBUG]---[ExcelImport]加载标题栏:身高

[DEBUG]---[ExcelImport]加载标题栏:工资

[DEBUG]---[ExcelImport]<<<<<<<<<<<<标题栏加载完毕>>>>>>>>>>>

[DEBUG]---[ExcelImport]第5行,姓名字段,数据为空,跳过!

[DEBUG]---[ExcelImport]第7行,生日字段,数据为空,跳过!

[DEBUG]---[ExcelImport]<<<<<装换完成有错误信息,共有对象:19个>>>>>>

第5行,姓名字段,数据为空,跳过!

第7行,生日字段,数据为空,跳过!

介绍就到此为止,下一篇上代码与分析!

POI 导入excel数据自动封装成model对象--介绍的更多相关文章

  1. POI 导入excel数据自动封装成model对象--代码

    所有的代码如下: import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; ...

  2. POI 导入excel数据自动封装成model对象--代码分析

    上完代码后,对代码进行主要的分析: 1.主要使用反射api将数数据注入javabean对象 2.代码中的日志信息级别为debug级别 3.获取ExcelImport对象后需要调用init()方法初始化 ...

  3. java 使用poi 导入Excel 数据到数据库

    由于我个人电脑装的Excel是2016版本的,所以这地方我使用了XSSF 方式导入 . 1先手要制定一个Excel 模板 把模板放入javaWeb工程的某一个目录下如图: 2模板建好了后,先实现模板下 ...

  4. POI 导入excel数据自己主动封装成model对象--代码分析

    上完代码后,对代码进行基本的分析: 1.主要使用反射api将数数据注入javabean对象 2.代码中的日志信息级别为debug级别 3.获取ExcelImport对象后须要调用init()方法初始化 ...

  5. 使用jquery将表单自动封装成json对象 /json对象元素的添加删除和转换

    $.fn.serializeObject = function () { var o = {}; var a = this.serializeArray(); $.each(a, function ( ...

  6. 基于 Aspose.Cells与XML导入excel 数据----操作类封装

    前言 导入excel数据, 在每个项目中基本上都会遇到,第三方插件或者基于微软office,用的最多的就是npoi,aspose.cells和c#基于office这三种方式,其中各有各的优缺点,在这也 ...

  7. Java 使用poi导入excel,结合xml文件进行数据验证的例子(增加了jar包)

    ava 使用poi导入excel,结合xml文件进行数据验证的例子(增加了jar包) 假设现在要做一个通用的导入方法: 要求: 1.xml的只定义数据库表中的column字段,字段类型,是否非空等条件 ...

  8. 在java poi导入Excel通用工具类示例详解

    转: 在java poi导入Excel通用工具类示例详解 更新时间:2017年09月10日 14:21:36   作者:daochuwenziyao   我要评论   这篇文章主要给大家介绍了关于在j ...

  9. Struts2(接受表单参数)请求数据自动封装和数据类型转换

    Struts2请求数据自动封装: (1)实现原理:参数拦截器 (2)方式1:jsp表单数据填充到action中的属性:        普通的成员变量,必须给set,get可以不给的.    注意点,A ...

随机推荐

  1. 《工程热力学沈维道童钧耕第四版-带书签》高清pdf下载链接

    <工程热力学沈维道童钧耕第四版-带书签>高清pdf下载链接 百度网盘链接:https://pan.baidu.com/s/1dWksA8O3y2JSfIQy5lrU5g 提取码:7x9w ...

  2. 进阶 Linux基本命令-1

    vmware三种网络模式1,桥接虚拟机直接连接外网,局域网.宿主机电脑不提供路由. 2,NAT网络地址转换,家庭网 3,host only 只能和宿主电脑打交道 Linux命令形式 命令 +[参数]+ ...

  3. deepin15.11小毛病解决

    目录 边缘花屏问题 QQ`Tim头像问题 ssh卡死问题 看直播卡 边缘花屏问题 sudo apt install systemsettings 打开kde系统设置 打开显示与设置,修改如图下,基本上 ...

  4. 2019-2020-1 20199325《Linux内核原理与分析》第六周作业

    正常的使用gdb跟踪分析函数调用 使用make rootfs命令 *用gdb跟踪分析一个系统调用内核函数 对于宏SAVE_ALL来说,这条语句会保存当前线程的现场,然后是执行system_call,跳 ...

  5. (一)PL/SQL简介

    PL/SQL PL/SQL也是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL).PL/SQL是Oracle数据库对SQL语句的扩展.在普通SQL语句的使用上增加了编 ...

  6. 2019-2020-1 20199329《Linux内核原理与分析》第十三周作业

    <Linux内核原理与分析>第十三周作业 一.本周内容概述 通过重现缓冲区溢出攻击来理解漏洞 二.本周学习内容 1.实验简介 注意:实验中命令在 xfce 终端中输入,前面有 $ 的内容为 ...

  7. 【高并发】又一个朋友面试栽在了Thread类的stop()方法和interrupt()方法上!

    写在前面 新一轮的面试已经过去,可能是疫情的原因吧,很多童鞋纷纷留言说今年的面试题难度又提高了,尤其是对并发编程的知识.我细想了下,也许有那么点疫情的原因吧,但无论面试的套路怎么变,只要掌握了核心知识 ...

  8. SpringCloud入门(十一):Sleuth 与 Zipkin分布式链路跟踪

    现今业界分布式服务跟踪的理论基础主要来自于 Google 的一篇论文<Dapper, a Large-Scale Distributed Systems Tracing Infrastructu ...

  9. Get on the CORBA

    from: <The Common Object Request Broker: Architecture and Specification> Client To make a requ ...

  10. 瑞银预计小扎的十年规划可获大回报 上调Facebook股票目标价

    瑞银认为马克·扎克伯格(Mark Zuckerberg)为Facebook定制的十年规划将带来丰厚回报,它已将Facebook股票的目标价由之前的155美元上调至165美元. Facebook首席执行 ...