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

在JPA中保存列表的顺序

秦鸿羽
2023-03-14
问题内容

关于JPA,我有以下问题:

我可以将元素的顺序保存在java.util.List中吗?在我的应用程序中,将元素放入列表的顺序很重要,但是从数据库中获取这些集合后,顺序却不一样(符合预期)。您能告诉我解决这个问题的方法吗?

PS:我放入集合中的实体中没有字段可用来订购它们。

罗森


问题答案:

在JPA 1中,有一些骇人听闻的方法可以做到这一点,但是切换到JPA
2提供程序是最容易的。您正在寻找@OrderColumn注释支持。Eclipselink有一个关于如何使用它的不错的教程。



 类似资料:
  • 我在MYSQL的Spring Boot应用程序中使用Spring数据JPA。在那里,我保存了一个字段上具有唯一约束的实体列表。在实体列表中,有一个实体将由于唯一约束而抛出DataWellityViolationExcure。我注意到在这种情况下,没有一个实体被持久化,即使是那些不违反唯一约束的实体。在这种情况下,什么是理想的方法,让那些不违反唯一约束的实体被持久化?当然,我可以迭代列表并一个接一个

  • 我尝试通过像这样更改if语句来只获得最长的回文。 这并不像预期的那样有效。我只打印第一个回文[“w”],然后在列表中返回整个字符串[“w”,“h”,...]

  • 问题内容: 我有一个清单 并希望“移动”其值,以便将其更改为 下一步 Python中是否有内置函数可以做到这一点? 还是有比这更好或更短的方法 问题答案: a = [1,2,3,4,5] >>> a.append(a.pop(0)) >>> a [2, 3, 4, 5, 1] 但是,这很昂贵,因为它必须移动整个列表的内容,即O(n)。如果在您的Python版本中可用,则可能是一个更好的选择,它允许

  • 问题内容: 这(应该)是一件很简单的事情,但是我很努力。 我希望这样生成一个表: 但是,当我查看数据库时,发现排序是错误的。有谁知道我该如何强制hibernate / jpa以正确的顺序生成表? 这是我的实体bean的样子: 问题答案: Hibernate会按字母顺序生成列。根据这篇文章,原因如下: 它被排序以确保跨集群的确定性排序。 我们不能每次都依靠vm以相同的顺序返回方法,因此我们不得不做些

  • 问题内容: 我注意到JSON对象中元素的顺序不是原始顺序。 JSON列表的元素呢?他们的订单得到维护吗? 问题答案: 是的,JSON数组中元素的顺序得以保留。从RFC 7159开始-JavaScript对象表示法(JSON)数据交换格式 (重点是我的): 对象是零个或多个名称/值对的 无序 集合,其中名称是字符串,值是字符串,数字,布尔值,null,对象或数组。 数组是零个或多个值的 有序 序列。

  • 我试图从流中获取订单地图。我有下一个代码: 在这里,我尝试对数据流进行排序,我认为地图也是有序的。但我错了。我认为调用collect(Collectors.toMap())不会保存流的顺序。有我如何做到这一点的例子吗?