Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jpa query.getResultList()被阻塞,没有错误_Jpa - Fatal编程技术网

jpa query.getResultList()被阻塞,没有错误

jpa query.getResultList()被阻塞,没有错误,jpa,Jpa,我有一个奇怪的例子,我写了一个简单的代码来在JPA2.0中查询DB 一切似乎都很好,但当代码点击query.getResultList时 它只是卡住了,没有响应,然后glassfish服务器获得了大约20%的CPU 然后什么也不发生,也不会生成任何错误或日志 怎么了 我用的是玻璃鱼,日食,网虫 这是我的代码: public List<?> getData(EntityManager em,Class entityClass){ Query query=em.createQuery("

我有一个奇怪的例子,我写了一个简单的代码来在JPA2.0中查询DB

一切似乎都很好,但当代码点击query.getResultList时

它只是卡住了,没有响应,然后glassfish服务器获得了大约20%的CPU

然后什么也不发生,也不会生成任何错误或日志

怎么了

我用的是玻璃鱼,日食,网虫

这是我的代码:

public List<?> getData(EntityManager em,Class entityClass){
Query query=em.createQuery("select entity from tblPromotions entity");
return query.getResultList();
}

提前感谢

试着调试一下,它卡在哪里了?kill或ctrl c打印堆栈跟踪,或使用调试器

还可以打开finest上的日志记录

它可能是一个数据库锁,因为它是一个读取,所以您必须使用某种序列化事务隔离,这可能是一个坏主意


amy对象在表中的位置如何,可能需要很长时间。

在我的例子中,在调试到Hibernate后,我发现查询返回的行太多,无法处理。 因此,可以通过为“最大结果”设置一些值来解决此问题:

query.setMaxResults(100);
顺便说一句:在这种情况下,总是尝试在框架中调试,它会给你答案:>