当前位置:编程学习 > JAVA >>

导入excel,批量将数据插入数据库的问题

现在需求是这样:
导入的excel里有很多sheet页,每个sheet页的数据对应一个java类.



数据导入后是先将每个sheet页的每行数据用json存在一个临时的记录表的字段里,内容举例简单点是这样:

{"areaname":"成都","description":"测试导入区域","parentname":"四川"}  // 区域对象
{"areaname":"成都","description":"测试导入局站","latitude":"14.2568","longitude":"12.3256","stationname":"传输局站"}  // 局站对象


前台将所有这样的记录罗列出来供勾选提交,选中的就要在真正的区域表或局站表插入这样的数据.

现在问题关键是:
1.比如插入局站数据时候,因为数据库表里存的只是区域的id,而excel里是放的区域名,这就需要自己先根据名字在区域表里找到该区域id,然后用id替换掉原来的名字.
2.各资源因为分包的不同,执行插入操作时候,分别是用的不同的service来调用方法.比如区域是用areaService.createArea(create); 局站是用stationService.createStation(create);

所以这样的2个问题导致我目前没找到好的方法,来写个通用方法搞定提交插入数据库.
求大神给点建议呢 

--------------------编程问答-------------------- 建议使用poi
poi对于excel,word的操作比较简单
如果使用javase的io,会比较难办,要识别很多东西 --------------------编程问答-------------------- 内联一下不行吗?
insert into A inner join B on A.id=B.id …… --------------------编程问答-------------------- 用jxl很简单的。 --------------------编程问答-------------------- ...晕,poi这些我会用. 回复的都不看内容就随便回答吗. 就2楼看了下内容,不过估计没看明白我写的..

我是问有没有将这些需求写成一个通用方法的建议 --------------------编程问答-------------------- 要么新建一个方法,要么就重写。。。建议新建一个方法做新增,先按区域名称找id 然后做 2张表的新增操作。  我在想有没有区域名相同的情况。。。 --------------------编程问答-------------------- 除
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,