当前位置: 首页 > 面试题库 >

Hibernate query.list()方法返回空列表,而不是空值

程禄
2023-03-14
问题内容

如果没有行,都query.list()criteria.list()正在返回 一个,而不是列表null值。

这背后的原因是什么?


问题答案:

原因是不与有效Java 2nd Edition,项目43 一致,在客户端代码中强制执行空检查: 返回空数组或集合,而不是null

这使客户端代码更简单,更不易出错(并且很可能也是该方法的实现)。

空返回惯用语可能是C编程语言的一种保留,在C语言中,数组长度与实际数组分开返回。在C中,如果返回零作为长度,则分配数组没有任何好处。



 类似资料:
  • 我试图访问MyModelClass上的getter方法,但我的代码返回

  • 有人能告诉我为什么列表返回空吗?我的xpath是准确的,因为我重新检查了它,但我仍然无法迭代它,而调试for循环甚至没有执行。我不确定我哪里出了问题。

  • 我有一个使用Spring数据的方法,JPA的findById()方法应该返回一个可选的。但是,如果指定的id找不到实体,它将返回null而不是空的可选项。 调试时,我发现op的值为null。这是一段失败的代码。我使用的是Spring数据JPA 2.0.8。释放。请帮忙

  • 所以,我的问题在于title-crudepository方法返回一个空列表。我重写了Crud的方法,因为它返回的是iterable而不是list。 我尝试使用而不是(当时我没有覆盖方法),但得到了相同的结果。 我的代码: Event.java 城市JAVA 事件Controller.java 事件条目。html 我正在使用一个嵌入式H2数据库,其中有一个用于将数据填充到数据库中的文件(我没有文件,

  • 我正在使用Spring Data JPA: 使用Spring 4.3.7。释放并Hibernate5.2.9。最终的 当我使用findAll查询时,List返回包含空值。 实体: 注:请注意,问题并不是来自lombock,我已经用getter和setter进行了测试。 仓库: 服务:

  • 问题内容: 我正在尝试编写一个用于与last.fm API进行交互的小脚本。 我有一点使用的经验,但是以前使用它的方式似乎无效,而是返回一个空列表。 我删除了API密钥,因为我不知道它到底应该有多私密,并举了一个示例,说明了我在该位置接收的XML。 与API交互的类: 调用的get_now_playing方法: 我收到的xml样本: 问题答案: 问题在于, 如果给定标签名称,则仅搜索元素的直接后代