当前位置:Gxlcms > 数据库问题 > java切分查询数据库表

java切分查询数据库表

时间:2021-07-01 10:21:17 帮助过:11人阅读

/** 2 * 准备工作,插入数据,100000条记录。 3 */ 4 @Test 5 public void test11() { 6 for (int i = 0; i < 100000; i++) { 7 UserInfo userInfo = new UserInfo(); 8 //生成随机数单号(1到100000)。 9 Random random = new Random(); 10 int max = 100000; 11 int min = 1; 12 int s = random.nextInt(max) % (max - min + 1) + min; 13 14 userInfo.setAge(random.nextInt(90) + 10); 15 userInfo.setName("张三" + i); 16 userInfo.setBillCode("" + s); 17 userInfoMapper.insertSelective(userInfo); 18 } 19 } 20 21 /** 22 * 查询数据,如查询1000个单号,每300个拆分。最后把结果集合并。 23 */ 24 @Test 25 public void test12() { 26 //结果集 27 List<UserInfo> result=Lists.newArrayList(); 28 List<String> listSearch = Lists.newArrayList(); 29 for (int i = 1; i <= 1000; i++) { 30 listSearch.add(i+""); 31 } 32 //按每300个拆分。只需查询3次数据库,用in查询。 33 List<List<String>> listOne = Lists.partition(listSearch, 300); 34 for (List<String> one : listOne) { 35 UserInfoExample example=new UserInfoExample(); 36 example.createCriteria().andBillCodeIn(one); 37 List<UserInfo> oneUserInfo= userInfoMapper.selectByExample(example); 38 result.addAll(oneUserInfo); 39 } 40 //输出 41 for(UserInfo userInfo:result){ 42 System.out.println("显示:"+JSON.toJSONString(userInfo)); 43 } 44 }

 

 输出:

技术图片

 

 

 

源码下载地址:

链接:https://pan.baidu.com/s/1hFq9DefyFMKgrk06iJylXw
提取码:fx4o

  

 

java切分查询数据库表

标签:dal   baidu   def   提取   public   ext   应用   ring   插入数据   

人气教程排行