mysql导入的excel更新_excel导入数据库,存在则更新不存在添加
public voidexcelToDB() throws ParseException {
String datapath= this.getParameter("datapath");
String filePath= AppUtil.getAppAbsolutePath()+datapath;
Workbook rwb= null;try{//創建輸入流
InputStream stream = newFileInputStream(filePath);//獲取Excel文件對象
rwb =Workbook.getWorkbook(stream);
}catch(Exception e) {
e.printStackTrace();
}//導入文件
Sheet rs = rwb.getSheet(0);//表
int rows = rs.getRows();//得到所有的行
for(int i=1;i
Map map = null;//如果busreqno,entno為空則添加
String busregno = rs.getCell(0,i).getContents();
String entno= rs.getCell(2,i).getContents();
map= yksptBuildManager.getEntityDao().findObjectBySql("sql查詢語句",busregno);if(map == null && !"".equals(entno) && entno!= null) {
map= yksptBuildManager.getEntityDao().findObjectBySql("sql查詢語句",entno);
}if(map == null) {
map= new HashMap();
}//沒查到就插入數據庫
所導入實體類 entity = new所導入的實體類();
boolean flag= false;if(map.size() != 0) {
entity= yksptBuildManager.getEntityDao().getById((String)map.get("所導入表id"));
flag= true;
}
entity.setBname(rs.getCell(1,i).getContents());
entity.setBaddress(rs.getCell(2,i).getContents());
entity.setOnesitekey(rs.getCell(3,i).getContents());
entity.setTwositekey(rs.getCell(5,i).getContents());//根據下標獲取excle表中經度緯度,取逗號前0后1
String s=rs.getCell(6,i).getContents();
String[] ss=s.split(",");if(!"".equals(s) && s!= null) {
entity.setCoordinatesx (ss[0]);
entity.setCoordinatesy(ss[1]);
}if(!"".equals(rs.getCell(7,i).getContents())&& rs.getCell(7,i).getContents()!=null) {//根據excle表內數據匹配后臺相對應狀態,001,,002,003~~存入庫內
entity.setBstreet(this.sysDictionaryManager.findDictNameByGroupkeyAndHvalue("ykspt.street",rs.getCell(7,i).getContents()));
}
entity.setManage(rs.getCell(8,i).getContents());
entity.setBtype(rs.getCell(9,i).getContents());
entity.setWorkstation(rs.getCell(10,i).getContents());
entity.setBuiltuparea(rs.getCell(12,i).getContents());
entity.setUpperarea(rs.getCell(13,i).getContents());
entity.setSparearea(rs.getCell(14,i).getContents());
entity.setPropertyunit(rs.getCell(15,i).getContents());if(flag) {//更新數據庫
this.yksptBuildManager.update(entity);
}else{//插入數據
this.yksptBuildManager.save(entity);
}
System.out.println(i);
}
}
總結
以上是生活随笔為你收集整理的mysql导入的excel更新_excel导入数据库,存在则更新不存在添加的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器学习导论(张志华):正定核性质
- 下一篇: php备份mysql页面_如何用PHP的