我使用jackson将json转换为java对象。
java对象:
List<Person> personList = objectMapper.readValue(json, new TypeReference<List<Person>>() { });
jcson转换:
org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: model.City
保存此人时,我收到以下错误:
{{1}}
你能告诉我吗?
答案 0 :(得分:0)
您必须在Person实体的City属性中包含cascade="all"
(如果使用xml)或cascade=CascadeType.ALL
(如果使用注释)。
这是因为你正在尝试保存一个被未保存的实体引用的实体。
如果您不想在删除人员时删除城市记录
你必须通过这些步骤:
1-从数据库获取城市:City city=session.get(id,City.class);
2-设置人员的城市:Person p=new person(); p.setCity(city);
3-保存Person对象。