Рассмотрим модель, как это:Hibernate JPA: JoinTable с отличительным колонке
Author
+ List<Books> popularBooks;
+ List<Books> unknownBooks;
Book
+ String name;
Могу ли я определить @JoinTable использовать отличительную колонку для обоих popularBooks
и unknownBooks
, так что я могу использовать отличительную столбец вместо двух таблиц? Например таблицы, как это:
author_to_book
+ author_id
+ book_id
+ is_popular
То, что я хотел бы добиться того, что когда-то я положил книгу в popularBooks
, Hibernate бы установить is_popular
в действительности.
Хорошо, мой плохой, на самом деле я хотел бы иметь M: N отношения, поэтому одна книга может принадлежать нескольким авторам, но не должны быть популярным для всех из них. Это означает, что книга не может иметь поле «популярное», как я сказал в схеме. –
, поэтому у вас есть отношения «многие ко многим» с таблицей JOIN. Книга является сущностью, и она может быть популярной или неизвестной за раз, поэтому это свойство должно войти в таблицу «Книга». Вы хотите сохранить популярность в таблице JOIN? то в этом случае вам нужно добавить новый столбец для таблицы JOIN, и снова вам нужно сделать это вручную, указав, какое значение вы хотите установить для этого свойства. В любом случае вы должны сделать это вручную самостоятельно. – Chaitanya
Да, я хочу иметь его в таблице соединений точно так, как я показал в схеме. Я хочу знать, сможет ли Hibernate обрабатывать этот столбец точно так же, как он способен обрабатывать столбец @OrderBy. –