我的示例代码:
public class A { @OneToMany @OrderColumn(name = "ORDER") private List<B> bList; ... } public class B { @Column(name = "ORDER") private Integer order; // I need this field because I want // to use the ordering field in my query. ... }
使用此代码,EclipseLink尝试创建“ORDER”列2次抛出异常而不创建B表。
感谢。
答案 0 :(得分:2)
请在EclipseLink上记录此问题的错误。
您不需要仅用于查询的列,您可以使用JPQL INDEX(bList)来查询订单列。
在EclipseLink中,您还可以使用DescriptorCustomizer为任何列定义QueryKey以允许查询它。
答案 1 :(得分:1)
使用@OrderBy而不是@OrderColumn。看看参考 http://docs.oracle.com/javaee/6/api/javax/persistence/OrderColumn.html