如果是这样,在什么情况下?
Javadoc和JPA规范什么也没说。
你是对的。JPA规范对此一无所获。但是 Java Persistence with Hibernate的第二版书 说:
如果查询结果为空,则返回null
调用query.getResultList()时,没有结果的Hibernate JPA实现(实体管理器)返回null。
更新
正如某些用户指出的那样,最新版本的Hibernate似乎返回一个空列表。
当找不到结果时,Eclipselink中也会返回一个空列表。