出现这种情况,一般是数据量太大导致 jvm 虚拟机内存溢出,即你返回的数据量太多

解决方式:

第一步:

通过将sql语句打印到控制台,或者将sql打印到日志上,查看日志中的sql

第二步:

将sql语句放到,Navicat 等数据库连接工具上进行执行,看返回的结果是多少条,(我的sql返回量是60多万条数据)

第三步:

①调整sql,使用 limit(适用于跨数据库平台即在mysql查到的结果,作为oracle查询的条件) 

②使用分页查询(自己分析需求是否适合用分页)

③使用SQL 的嵌套(适用于同一个数据库平台,即所用的表都在一个数据库中)

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐