spring 数据提取按顺序映射 object

spring data fetch mapped object in order

我们有 Spring 引导 2.x、Spring 数据和 PostgreSQL 作为数据库。

在我们的应用程序中,我们有 Driver class 如下所示

@Data
@Entity
public class Driver {
    private String id;
    private String name;
    private String licenseNo;
}

现在一辆汽车可以由很多司机驾驶。所以我们有 Car class 如下。

@Data
@Entity
public class Car {
    private String id;
    private String number;
    private String registrationNumber;
    @OneToMany(fetch = FetchType.LAZY)
    private List<Driver> drivers;
}

每当我们从 car object 获取 drivers 时,我们得到的驱动程序不是按 id 升序排列的,看起来它按 nameid降序排列。

在 JPA 中有什么方法可以在映射时指定默认顺序。

谢谢

您好,您在drivers字段添加了注解

显示代码。

@Data
@Entity
public class Car {
    private String id;
    private String number;
    private String registrationNumber;

    @javax.persistence.OrderBy("id ASC")
    @OneToMany(fetch = FetchType.LAZY)
    private List<Driver> drivers;
}

订单选项 'ASC' 'DESC',默认为 ASC

例如:

@javax.persistence.OrderBy("id")

@javax.persistence.OrderBy("name")

或:

@javax.persistence.OrderBy("id DESC")

@javax.persistence.OrderBy("name  DESC")