在JPA中保持多对多关系排序

问题描述 投票:0回答:1

假设您在用户创建指标时选择的预定义国家/地区列表中有一个可用的指标对象。国家/地区列表由用户以特定方式(不是按字母顺序或任何简单的方式)排序,并且他希望在所有应用程序中对它们进行排序。

@Entity
public class Indicator {
    @Id
    private Long id;

    @ManyToMany
    private List<Country> countries;

    //Getters, setters
}

@Entity
public class Country {
    @Id
    private Long id;
    private String name;

    //Getters, setters and other attributes
}

JPA 有没有一种简单的方法来保持国家列表的顺序?我尝试在连接表中使用 @OrderColumn 和 sort_order ,但它没有按预期进行。

我是否必须映射连接表,从而无法从指标直接访问国家/地区?

java postgresql jpa orm
1个回答
0
投票

试试这个:

@OrderBy("name")
@ManyToMany
private List<Country> countries;
© www.soinside.com 2019 - 2024. All rights reserved.