Hibernate другое имя столбца внешнего ключа - PullRequest
2 голосов
/ 20 сентября 2011

Я попал в таблицы БД: а) rb_user: id_user, имя пользователя, ... б) rb_user_password: id, user_id, пароль.

Как комментировать это в моих классах Java? Я получил:

@Entity
@Table(name="rb_users")
@SecondaryTable(name="rb_user_password")
public class User {

    @Id
    @Column(name="id_user")
    private int id;
    private String name;
    ...
    @Column(table="rb_user_password", name="password")
    private String password

Я получил эти исключения:

org.postgresql.util.PSQLException: ОШИБКА: столбец user0_1_.id_user делает не существует

Я знаю это, потому что я получил первичный ключ "id_user", и в моей таблице с именем столбца пароля есть "user_id"

1 Ответ

0 голосов
/ 20 сентября 2011

Вы можете указать имя атрибута во вторичной таблице с атрибутом pkJoinColumns на @SecondaryTable.

@Entity
@Table(name="rb_users")
@SecondaryTable(name="rb_user_password", pkJoinColumns=@PrimaryKeyJoinColumn(name="user_id"))
public class User {
...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...