Можно ли настроить весеннюю загрузку и хранить несколько значений (List) в одной таблице (например, OneToMany, но не в 2 таблицах)? - PullRequest
0 голосов
/ 18 февраля 2020

Вы можете иметь отношение OneToMany между двумя таблицами, но вы также можете иметь это отношение только в одной таблице. Таким образом, в этом случае список некоторого свойства (столбца) будет повторяться.

Допустим, у нас есть Entity со столбцом ID_FIRST_TABLE и списком значений ID_SECOND_TABLE для этого ID_FIRST_TABLE. В качестве объекта это будет object1.listObjects2, и если его можно настроить только с одной таблицей, это будет просто objectRepository.save (object1), в котором будет храниться

GENERATED ID | ID_FIRST_TABLE | ID_SECOND_TABLE | NAME
      1                1              1           Name1
      2                1              2           Name2
      3                2              3           Name3
      4                2              2           Name2

В этом ONE TABLE находится объект ( FIRST_TABLE), который имеет свойство как список других объектов (SECOND_TABLE).

Aobject1(FIRST_TABLE)
                    .id=1
                    .List<SECOND_TABLE> -> Bobject1(SECOND_TABLE)
                                                                 .id=1
                                                                 .name=Name1
                                        -> Bobject2(SECOND_TABLE)
                                                                 .id=2
                                                                 .name=Name2

Aobject2(FIRST_TABLE)
                    .id=2
                    .List<SECOND_TABLE> -> Bobject3(SECOND_TABLE)
                                                                 .id=3
                                                                 .name=Name3
                                        -> Bobject2(SECOND_TABLE)
                                                                 .id=2
                                                                 .name=Name2

Итак, я хочу иметь только одну таблицу, в которой при сохранении Aobject1 будет сохранено 2 записи в этой таблице (GENERATED ID 1 и 2 ). Когда я сохраняю Aobject2, он также сохраняет в этой таблице 2 записи (GENERATED ID 3 и 4).

...