Изучаю JPA. И изучаю связи. Не могу понять, чем отличаются эти 2 аннотации. Вот как выглядит OneToOne - в одной таблице создается внешний ключ на другую таблицу.
Вот как выглядит OneToMany - создается одна таблица, которая связывает две другие таблицы. Но также можно настроить используя @JoinColumn что бы создавалась не таблица, а внешний ключ. В чем тогда различия? Разве OneToMany должен быть так реализован? OneToMany - это список с сущностями. Т.е. структура данных со структурами данных внутри. Разве он не должен быть реализован как бд с бд?
И еще один вопрос: Допустим, у меня есть E1 и E2. Зачем нужна двунаправленная связь? Чтобы я мог изменять E1 взаимодействуя с E2 и изменять E2 взаимодействуя с E1? Кто нибудь может ответить? хееей
Алексей, чего бы хотелось Вам пожелать, это сосредоточиться на понимании понятия персистности и того, что JPA предоставляет эту персистность. Что касается упомянутых аннотаций, то они являются указаниями для JPA как обеспечить персистность свойств, помеченных ими. Например, когда Вы запросите значение свойства, JPA само (без Вашего участия) определит на основании указанной аннотации какой нужен запрос для получения данных (может быть списка данных) из БД. Если Вы собираетесь самостоятельно, вручную обеспечивать персистность в этой части задачи, то Вы не обязаны использовать эти аннотации.
Продвижение своими сайтами как стратегия роста и независимости