Как добавить внешний ключ с помощью hibernate из таблицы, не отображаемой с помощью hibernate? - PullRequest
0 голосов
/ 28 ноября 2018

У нас есть устаревшая таблица в нашей базе данных, которая называется «пользователь».Доступ к нему возможен из любого веб-приложения, но он не отображается в спящем режиме.

Если вы создаете класс (назовем его проектом) со столбцом «user_id» и отображаете его с помощью hibernate, вы не можете ссылаться на user_id пользовательской таблицы без объекта User, отображаемого с помощью hibernate.

Если бы у вас был класс с отображением гибернации " Пользователь ", я бы сделал это так

@Entity
@Table(name = "project")
public class Project implements Serializable {

    // project specific attributes go here

    @OneToOne
    @JoinColumn(name = "user_id", updatable = true, nullable =  false)
    private User user;
}

Знаете ли вы, как создать связь с внешним ключомбез пользовательского класса?Что-то вроде

@JoinColumn(table="user",name = "user_id")
private long user_id;

Еще одна мысль, которая у меня возникла, - создать библиотеку, содержащую класс «пользователь», который можно отобразить с помощью hibernate.Он должен быть доступен через папку "libs" на Apache Tomcat.Единственная проблема в том, что hibernate, похоже, не может отобразить класс, если он используется таким образом.(Сопоставление работает нормально, если вы импортируете его как обычную библиотеку в одно веб-приложение)

1 Ответ

0 голосов
/ 28 ноября 2018

Вы можете отобразить его как long

@Column(name = "user_id")
private long user_id;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...