1. 程式人生 > >關於導入數據到Excel中對數據庫進行去重以及對導入的Excel文件進行去重

關於導入數據到Excel中對數據庫進行去重以及對導入的Excel文件進行去重

導入 hash list() exc 數據 clear arraylist equals 需要

插入到數據庫去重:

1.將你循環讀取的List進行遍歷

2.在你即將插入到數據庫的方法之前獲取你需要查詢的數據,執行查詢方法

1 devList=deviceDao.findDevice(device.getRfid());
2              if(devList.size()>0){
3                       messageStr = "數據重復,請重新導入!";
4 
5              }else{
6                        deviceDao.save(device);
7                         messageStr = "數據導入成功!";
8 }

對導入的Excel文件去重:

(1)循環List中的元素對於重復的進行刪除

1 //循環讀取的devList
2 for  ( int  i  =   0 ; i  <  devList.size()  -   1 ; i ++ )  {       
3       for  ( int  j  =  devList.size()  -   1 ; j  >  i; j -- )  {       
4            if  (devList.get(j).equals(devList.get(i)))  {       
5 devList.remove(j); 6 } 7 } 8 }

(2)通過HashSet去除重復元素

1 //同上,list為獲取到Excel數據的list
2 HashSet h = new HashSet(list);   
3 list.clear();   
4 list.addAll(h);

(3)遍歷List,看數據是否存在,使用contain

1         List listTemp = new ArrayList();  
2         for
(int i=0;i<list.size();i++){ 3 if(!listTemp.contains(list.get(i))){ 4 listTemp.add(list.get(i)); 5 } 6 }

關於導入數據到Excel中對數據庫進行去重以及對導入的Excel文件進行去重