java研發手機歸屬地批量查詢
阿新 • • 發佈:2019-01-07
需求:通過一個手機號可以查出手機號的歸屬地,網上是可以查的,但是10萬個手機捏?當然你有1萬個員工,每人幫你查10個,也算還可以。相形見絀,運用程式幫你查分分鐘事情,接下來教大家如何用java批量查詢手機歸屬地,當然程式碼還可以繼續優化的,沒有使用多執行緒,效率有所慢一些。
思路:excel讀取——資料庫查詢手機歸屬地——excel寫出
程式碼:
File f2003 = new File(filePath);
try {
List<Map<String, Object>> list = new ArrayList<Map<String , Object>>();
List<List<Object>> lists = _excelUtil.readExcel(f2003);
for(int i = 0;i<lists.size();i++){
String result02 = insertQuestions2ForExcel(lists.get(i),paperId,questionNoNum);
String[] result02_ = result02.split(",");
if (result02_.length == 4){
Map<String, Object> map = new HashMap<String, Object>();
map.put("CODEA", result02_[0]);
map.put("CODEB", result02_[1]);
map.put("CODEC", result02_[2]);
map.put("CODED" , result02_[3]);
list.add(map);
}
}
/*final List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
List<List<Object>> lists = _excelUtil.readExcel(f2003);
ExecutorService executorService=Executors.newFixedThreadPool(10);
for(final List<Object> listss : lists){
executorService.execute(new Runnable() {
public synchronized void run() {
Map<String, Object> map = null;
String result02 = insertQuestions2ForExcel(listss,paperId,questionNoNum);
String[] result02_ = result02.split(",");
if(result02_.length == 4){
map = new HashMap<String, Object>();
map.put("CODEA", result02_[0]);
map.put("CODEB", result02_[1]);
map.put("CODEC", result02_[2]);
map.put("CODED", result02_[3]);
list.add(map);
}
}
});
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
executorService.shutdown();*/
LinkedHashMap<String, String> titleMap = new LinkedHashMap<String, String>();
titleMap.put("CODEA", "姓名");
titleMap.put("CODEB", "手機");
titleMap.put("CODEC", "省份");
titleMap.put("CODED", "城市");
FileOutputStream out = new FileOutputStream("D:/33.xls");
try {
_excelUtil.exportCommonExcel(null, titleMap, list, out);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("匯出成功!");
} catch (IOException e) {
e.printStackTrace();
}