@JoinFormula和@OneToMany定义 – 糟糕的文档
我有两个关于@JoinFormula和@OneToMany注释的问题:
-
如何使用
@JoinFormula
和@OneToMany
注释限制结果数量? -
如何在表达式中定义
id
author = id
是指Author.id
?Author { @Id private Long id; @OneToMany @JoinFormula(value = "SELECT a FROM Article a WHERE author = id AND schedule < CURRENT_TIMESTAMP()") // limit = 15 private List
pastArticles; }
像这样,即使我删除了schedule <
子句的一部分,我仍然保持过去的文章为空。
谢谢!
答案1:
@Size(max=10) private List commentList;
答案2 :(就是这样的例子)
public class A{ @Id @GeneratedValue private Integer id; private String uuid; ... }
其他课程
public class B{ @Id @GeneratedValue private Integer id; private String uuidOfA; @ManyToOne @JoinColumnsOrFormulas({ @JoinColumnOrFormula(formula=@JoinFormula(value="(SELECT a.id FROM A a WHERE a.uuid = uuid)", referencedColumnName="id")), @JoinColumnOrFormula(column = @JoinColumn("uuidOfA", referencedColumnName="uuid")) }) private A a; }
你最好使用@Where
注释来限制结果