hibernate注解配置关联关系

1.在判断到底是谁维护关联关系时,可以通过查看外键,哪个实体类定义了外键,哪个类就负责维护关联关系。

JoinColumn(name="pid")

2. 在保存数据时,总是先保存的是没有维护关联关系的那一方的数据,后保存维护了关联关系的那一方的数据,如:
             Person p = new Person();
            p.setName("xiaoluo");
            session.save(p);
            
            IDCard card = new IDCard();
            card.setNo("1111111111");
            card.setPerson(p);
            session.save(card);



            因为有主外键关系,不可能主键还没有就生成外键
3.fetch=FetchType.LAZY 默认都是非延迟加载EAGER



--------------java转json hibernate懒加载造成的无限递归问题 ----------------------

hibernate对象懒加载,json序列化失败,因为懒加载这个对象属性只是一个代理对象,如果json直接当作一个存在的属性去序列化就会出现错误
需要在实体类上加上
@JsonIgnoreProperties(value={"hibernateLazyInitializer","handler","fieldHandler"})

java转json hibernate关联关系造成的无限递归问题,value里添加映射字段

@JsonIgnoreProperties(value={"hibernateLazyInitializer","handler","fieldHandler","historyArcticlesLinkMapping"})

猜你喜欢

转载自blog.csdn.net/qq_34530405/article/details/82113947
今日推荐