spring boot - SpringJPA - Saving child object in one-to-many relation does not show up in the parent object after its findOne() -
when save child object , try fetch parent again, not associated child object. using springjpa , have following one-to-many relation.
class classroom { @id private integer classid; onetomany(mappedby="classroom", cascade = cascadetype.all, fetch = fetchtype.eager) private set<student> students; } class student { @id private integer studentid; @column(name="class_room_id", insertable = false, updateable = false) private integer classroomid; manytoone joincolumn(name = "class_room_id", referencedcolumnname="class_room_id") private classroom classroom; }
even when classroomrepository.findone(classroomid) still returns 1 class. believe expected behavior returns cached instance. there way force jpa fetch associations. tried save , fetch in 2 separate transactions , still same error.
can guide me how see common use-case scenario ?
update: following code invokes these transactions
class studentproxy { public void saveandloadstudent() { studentservice.savestudent(); studentservice.loadclassroom(); } } class studentservice { @transactional public void savestudent() { studentrespository.save(student); } @transactional public void loadclassroom() { classroom classroom = classroomrepository.findone(classroomid); // classroom has no students in it. }
Comments
Post a Comment