JPA Самостоятельные ссылки, отношения один ко многим или многие ко многим - Решение? - PullRequest
0 голосов
/ 22 марта 2020

Посоветуйте обходные пути JPA для следующих ситуаций:

[Описание проблемной ситуации]

  • Объект задачи может ссылаться на предыдущие задачи (отношения OneToMany и Самостоятельная ссылка)
  • Если у предыдущей задачи есть другие предыдущие задачи, то циклическая ссылка. (Это верно? Честно говоря, я точно не знаю)

Итак, я временно определил таблицу как:

CREATE TABLE TASK (
    ID              INT(5)          AUTO_INCREMENT    PRIMARY KEY,
    TITLE           VARCHAR(100)    NOT NULL,
    COMPLETED       BOOLEAN         DEFAULT FALSE,
    CREATED_DATE    TIMESTAMP       DEFAULT CURRENT_TIMESTAMP(),
    MODIFIED_DATE   TIMESTAMP
);

CREATE TABLE TASK_REFS(
    SRC_ID          INT(5)      REFERENCES TASK(ID),
    REF_ID          INT(5)
);

TASK.ID - TASK_REFS.SRC_ID добавит связь ограничение внешнего ключа, тогда как во избежание циклических ссылок отношение TASK_REFS.SRC_ID--TASK.ID не будет добавлено ограничение внешнего ключа.

И я придумал сценарий добавления одного поля отношения @OneToMany к Задача сущности.

Кажется, здесь есть над чем подумать. В таблице TASK_REFS есть только один смысловой столбец (REF_ID). напротив, для использования @OneToMany необходимо определить класс сущности TaskRef и добавить поле @OneToMany. Это кажется слишком чрезмерным ~

Я думал об использовании @SecondaryTable, но это казалось невозможным в отношениях OneToMany. (Точно, я не знаю?)

Что мне делать? Я не могу найти примерный ответ. Пожалуйста, посоветуйте мне ~

Я хотел бы видеть источник класса сущности JPA, если это возможно. Я был бы очень впечатлен, если бы вы показали мне действующий код, и я был бы вам очень признателен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...