У меня есть отношение m:n книга — заимствование — пользователь, заимствование — это таблица соединения.
Таблицы даны (изменениям не подлежат):
- с одной стороны, они также используются приложением jdbc.
- с другой стороны, я хотел бы использовать их через jpa
book(book_id) - заимствовать(book_id,used_id) - пользователь(user_id)
used jpa annotations:
User:
@OneToMany(targetEntity=BorrowEntity.class, mappedBy="user")
@JoinColumn(name="USER_ID", referencedColumnName="USER_ID")
private List<BorrowEntity>borrowings;
Book:
@OneToMany(targetEntity=BorrowEntity.class, mappedBy="book")
@JoinColumn(name="BOOK_ID", referencedColumnName="BOOK_ID")
private List<BorrowEntity>borrowings;
Моя проблема заключается в том, что указанные выше настройки добавляют дополнительные (нежелательные) поля в таблицу заимствований:
'user_USER_ID' и 'book_BOOK_ID'
Как я могу настроить аннотации jpa, чтобы оставить только Borrow:user_id,book_id, что достаточно для многих к одному?
Взгляните на картинку, которая говорит больше: