JPA,地图和广告订单

wil*_*ood 3 java orm jpa

我的google-fu在此失败了.我正在做一个小型数据库应用程序,它从文件中读取一些数据以及我当前存储在我的实体中的Map中的一些元数据.我厌倦了它总是以随机顺序显示.

那么我可以使用LinkedHashMap或@OrderColumn与地图以某种方式保留插入顺序吗?

@Entity
public class MooData
{
    @OrderColumn
    @ElementCollection
    private List<BigDecimal> data;

    @ElementCollection
    private Map<String, String> properties;
}
Run Code Online (Sandbox Code Playgroud)

Pas*_*ent 8

我在JPA 2.0规范中找不到@OrderColumn注释应该适用的任何证据Map.引用规范:

11.1.39 OrderColumn注释

OrderColumn注解指定用于维护的持续顺序列一个清单.持久性提供程序负责在检索时和数据库中维护顺序.持久性提供程序负责在刷新到数据库时更新排序,以反映影响列表的任何插入,删除或重新排序.所述OrderColumn 注释可以在一个一对多或多对一的一对多的关系或在元件集合来指定.在OrderColumn 注释上引用的集合,是被命令的关系端指定.订单列在实体或可嵌入类的状态中不可见.

如果您想保留订单,请使用List(Embeddable在您的情况下).使用a Map,按键访问值.