繁体   English   中英

如何在spring boot jpa中使用@OrderBy和Embeddable

[英]how to use @OrderBy with Embeddable in spring boot jpa

我有 3 个实体单位,关闭,位置。 在我的单位里有一个一对多的约束,有列表关闭,关闭有位置。 我想按position.code的代码订购,我该如何制作

@Entity
@Table(name = "unit")
public class Unit{

 @Id
 @Column(name = "id")
 private Long id;

 @OneToMany(fetch = FetchType.LAZY)
 @JoinClolumn(name = "unit")
@ElementCollection
 @OrderBy("position.code")
 private List<Off> offs;
}

这是我的实体关闭

@Entity
@Table(name = "off")
@Embeddable
public class Off{

 @Id
 @Column(name = "id")
 private Long id;

 @Column(name = "cate_position")
 private Long catePosition;

 @ManyToOne
 @NotFound(action = NotFoundAction.IGNORE)
 @JoinClolumn(name = "cate_position")
 @Embedded
 private Position position;
}

这是我的实体职位

@Entity
@Table(name = "position")
@Embeddable
public class Position{

 @Id
 @Column(name = "id")
 private Long id;

 @Column(name = "code")
 private String code;
}

如何通过“position.code”对 Unit 实体中的 List offs 进行排序,它总是抛出无效的列名“position”。 非常感谢!

使用 @Embeddable 注释实体类 Off,现在在 List 上方包含以下代码

@ElementCollection
@OrderBy("position.code DESC")
private List<Off> offs;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM