首页 > 其他分享 >使用原生JDBC查询/Statement查询 结果集ResultSet转List<Bean>工具类 & 对转换结果List<Bean>进行stream流处理 筛选 分组报错

使用原生JDBC查询/Statement查询 结果集ResultSet转List<Bean>工具类 & 对转换结果List<Bean>进行stream流处理 筛选 分组报错

时间:2023-01-04 11:25:24浏览次数:55  
标签:转换 stream List 查询 报错 drugFlow

网上的工具类也不是都不能用,只是我只找到这个可以用。

记一次转载,转换工具类,原文链接:

https://www.iteye.com/blog/ghl116-1155456

 

转换为List<Bean>后,对其进行stream流处理,进行筛选 分组操作报类型转换错误,可以继续往下看:


 

主要本次业务查询后对结果集使用stream流进行过滤、分组操作,在collect时报错:hashMap无法转换为自定义Bean。

 查询结果集:drugFlowList

 报错位置:.collect()

Map<String, List<DrugFlow>> collectOfMarketingCompanyCodeSupplier = drugFlowList.stream()
                    .filter(drugFlow -> drugFlow.isFlowFlag() && drugFlow.isCYSupplierFlow() && StringUtils.isNotBlank(drugFlow.getMarketingCompanyCodeSupplier()))
                    .collect(Collectors.groupingBy(DrugFlow::getMarketingCompanyCodeSupplier, Collectors.toList()));

这里其实和map完全无关,搞不懂为啥报这个错,后来在stackoverflow找到原因了:

查询结果集是我用原生JDBC取出来的,取出来是ResultSet类型,我用一个转换工具类提供的方法进行了奇怪的循环遍历对ResultSet进行了转换,转换为自定义List<Bean>,导致了“堆污染”,欺骗了编译器,因此报错,将转换处理后就没问题了,文首提供的工具类链接本次可用。

 

标签:转换,stream,List,查询,报错,drugFlow
From: https://www.cnblogs.com/REAL1N/p/17024325.html

相关文章

  • JAVA问题总结之22--Arraylist集合的操作
    JAVA问题总结之22--Arraylist集合的操作:packagecom.atguigu.java1;importjava.util.ArrayList;importjava.util.List;importorg.junit.Test;publicclassTestList{......
  • mysql5.7对json字段查询
    {"data":{"shipper":{"address":"No.236QianwangangRoad,WestCoastNewArea","province":"SHANDONG","cit......
  • MongoDB从入门到实战之.NET Core使用MongoDB开发ToDoList系统(2)-Swagger框架集成
    Swagger是什么?Swagger是一个规范且完整API文档管理框架,可以用于生成、描述和调用可视化的RESTful风格的Web服务。Swagger的目标是对RESTAPI定义一个标准且和语......
  • 数组转List的方法
    数组转List的方法:String[]s=newString[2];s[0]="abc";s[1]="qaz";方法一:Arrays.asList(s)List<String>list=Arrays.asList(s);list.add("efgk");//报错li......
  • 《STL 源码剖析》学习笔记之容器(二)list
    [图]Theorange 2019-08-061、list概述相较于vector的连续线性空间,list就显得复杂许多,它的好处是每次安插或删除一个元素,就配置或释放一个元素空间。因此,list对于空间......
  • List集合的排序方式
    本文主要讲述Lsit集合的排序方式:1/**2*集合的排序方式:2种方式3*/4publicclassGenericWork{5publicstaticvoidmain(String[]args){......
  • postgresql用sql查询表结构
      查询sql如下:SELECTa.attnameASfield,t.typnameAStype,CASEWHENt.typlen=-1THENa.atttypmod-4ELSEt.typlen::integerENDASlengthvar,casea.......
  • Go 基础数据类型转换为字符型
    packagemainimport"fmt"funcmain(){ vara1=18 vara2=10.635 vara3=false n1:=fmt.Sprintf("%d",a1) n2:=fmt.Sprintf("%f",a2) n3:=fmt.S......
  • 免费MP4转换GIF工具开源
    实现效果开源原因:市面上的其他转换工具多半要收费,不划算,所以就开源了采用框架:PyQt5+moviepywin安装包地址:https://ytouch-1258011219.cos.ap-nanjing.myqcloud.com/dt_mp......
  • Unicode 与 UTF-8 编码的转换
     注意:下面这两段是代理区。即第1——16平面的间接表示,四个字节的汉字就在这里表示D800-DBFF:High-halfzoneofUTF-16DC00-DFFF:Low-halfzoneofUTF-16本篇中包含了所有......