我正在寻找一个可以帮助我解析包含管道分隔记录的CSV文件并从中创建我的bean类实例的Java库。
我已经研究过几种替代方案,例如SuperCSV,OpenCSV,BeanIO,JFileHelper,jsefa ......但是它们似乎都不具备它所需的功能。
图书馆的要求:
我所研究的所有图书馆似乎缺乏要求#4。
我可以使用反射,但问题是它仍然为CSV文件中的每一行创建一个新的bean对象。因为此时我唯一要做的就是将bean传递给我的持久层并将其存储在数据库中,将几个bean实例放入池并创建一个从中获取实例的工厂是有意义的。这个游泳池。通过这种方式,我可以重新使用我的实例,并且在GC出现之前解析100000行CSV文件不会导致100000个实例存在于内存中。
是否有人知道可以处理所有这些要求的库?
答案 0 :(得分:1)
这可能是另一种选择:https://github.com/org-tigris-jsapar/jsapar
它可能不符合要求#4。
在这里,您可以找到更全面的备选方案列表:http://jsapar.blogspot.se/p/links.html
编辑
从jsapar 1.8版开始,现在可以在外部工厂类中自定义Java对象,因此我想现在也符合#4的要求。