У меня есть автор -> отношения с книгами
@OneToMany(CascadeType.All)
List<Book> lstBooks;
Так что, когда я добавил 2 книги и удалил одну, а затем позвонил своему сервису authorService.update(authorObject);
, я заметил, что две новые книги былидобавлен в базу данных, но, что интересно, тот, который я удалил, фактически не был удален из базы данных.
Мне показалось это странным. Но хорошоИтак, я обнаружил, что есть атрибут orphanRemoval = true, поэтому я добавил это. И удивительно, теперь книга, которую я удалил, была также удалена из базы данных.
Так что теперь я думаю, что должен быть очень осторожным. Если я создаю новый объект автора и пропускаю пустой список книг, я думаю, что все мои книги будут удалены. Насколько мне известно, значение null для списка книг никогда не допускается.
Что на самом деле быстрее, если я хочу обновить соответствующие книги автора.
Для использования. authorService.update(author)
или просто использовать bookService.delete(id)
или bookService.add(id)
методы?