Я впервые использую метод persist () в проекте. В JPA я использую Hibernate в качестве провайдера. Дело довольно простое. У меня 2 стола
- Компания - Company_id (PK, последовательность), G_Company_id (также будет уникальным)
- CP_Doc - Chronicle_id (PK), Company_id (от FK до Company_id выше))
Теперь у меня есть несколько CP_Docs для какой-то конкретной компании. Я успешно создал объекты (работаю с createNativeQuery, createQuery из JPA). Я также упомянул cascade = CASCADE.ALL для коллекции.
Для настойчивости я пишу следующий код.
Company company = new Company();
company.setGCompanyId(7);
for(/* Get all docs for a particular company having id = 7 */) {
CP_Doc cpDoc = new CP_Doc();
cpDoc.setChronicleId(/* some chronicle id from the loop */);
cpDoc.setCompany(company);
entityManager.persist(cpDoc);
}
Связь между таблицами заключается в том, что одна компания может иметь много cp_docs. Таким образом, таблица CP_Doc является таблицей-владельцем. Я попытался сохранить со стороны CP_Doc. Могу ли я также настоять на своем и со стороны юридического лица компании. Пожалуйста, помогите знатокам :)