前言
java的朋友,你是否在用poi,jxl操作excel,然后进行如下繁琐的操作
行遍历
列遍历
读取数据
如果是,那么我推荐你使用bird-x,一个模仿hibernate的组件--姑且叫组件吧.
bird-x把这些操作都封装起来了,你只需要像hibernate一样提供必要的信息,bird-x就可以直接给你个对象的list.
它可以像hibernate操作数据库一样操作excel.
一位4年java开发经验的同事说:不用要一天,用了要半天(可以提高一倍的开发效率).
bird-x--处理流程
- 在配置文件里面配置excel的sheet与object的映射关系和校验内容
- som解析excel : sheet-->list, row-->object, cell-->property
- rule校验cell-->property的合法性
- 最终输出一个包含对象的list
google code
性能测试
{sex=性别, no=学号, height=身高, name=姓名, birthday=出生日期}} 1000行 读取excel成poi对象 : 3.469秒 解析poi对象成list : 2.14秒 读取+解析 : 5.609秒 4000行 读取excel成poi对象 : 3.469秒 解析poi对象成list : 0.86秒 读取+解析 : 4.329秒 10000行 读取excel成poi对象 : 3.469秒 解析poi对象成list : 1.922秒 读取+解析 : 5.391秒 40000行 读取excel成poi对象 : 3.469秒 解析poi对象成list : 7.718秒 读取+解析 : 11.187秒
说明:使用poi 3.1 实现, poi有5万行的限制, 为此bird-x也有5万行的限制. 大部分没有这么大的数据量.