В JPA я могу получить доступ к полю, созданному @OrderColumn в собранный объект? - PullRequest
5 голосов
/ 10 января 2012

Мой пример кода:

 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 попытается создать столбец «ЗАКАЗ» 2 раза, выдав исключение и не создавая таблицу B.

Спасибо.

Ответы [ 2 ]

2 голосов
/ 10 января 2012

Пожалуйста, зарегистрируйте ошибку для этой проблемы на EclipseLink.

Вам не нужен столбец только для запросов, вы можете использовать JPQL INDEX (bList) для запроса столбца заказа.В EclipseLink вы также можете использовать DescriptorCustomizer для определения QueryKey для любого столбца, чтобы разрешить запросы к нему.

1 голос
/ 10 января 2012

Используйте @OrderBy вместо @OrderColumn.Посмотрите на ссылку http://docs.oracle.com/javaee/6/api/javax/persistence/OrderColumn.html

...