zoukankan      html  css  js  c++  java
  • Hibernate注解 @OneToMany 相关属性

    @OneToMany(fetch=FetchType,cascade=CascadeType)
    可选
    @OneToMany描述一个一对多的关联,该属性应该为集体类型,在数据库中并没有实际字段.
    fetch:表示抓取策略,默认为FetchType.LAZY,因为关联的多个对象通常不必从数据库预先读取到内存
    cascade:表示级联操作策略,对于OneToMany类型的关联非常重要,通常该实体更新或删除时,其关联的实体也应当被更新删除
    例如:实体User和Order是OneToMany的关系,则实体User被删除时,其关联的实体Order也应该被全部删除
    示例:

    @OneTyMany(cascade=ALL)
    public List getOrders() {
    return orders;
    }

    //工作组集合
    @OneToMany(cascade=CascadeType.ALL,fetch=FetchType.EAGER,mappedBy="farm")
    private Set<WorkTeam> workTeams= new HashSet<WorkTeam>();

    我原来用的fetch=fetch=FetchType.EAGER 这种方式 是查一这个实体对象的时候 一同查询了多个类,

    这导致 我只想查一实体列表的时候 用了left out join 连接多这个表,

    所以多了重复的记录

    所以错了

    所以我想改成默认的 lazy方式 看看行不行
    http://www.iteye.com/topic/408701

    而当用到ManyToOne的时候 用eager,就是说我查 多 实体的时候 ,也关联查 一实体 了 ,这是业务需要的


    http://www.iteye.com/topic/408701

    http://junzinevercry.iteye.com/blog/746580

  • 相关阅读:
    SQL——UPDATE(改)
    SQL——INSERT INTO(增)
    SQL——SELECT(查)
    Python——raise引发异常
    Python——异常处理
    Python——多态、检查类型
    Python——继承
    Python——封装
    popitem()方法
    pop(D)方法
  • 原文地址:https://www.cnblogs.com/qylbg/p/3576167.html
Copyright © 2011-2022 走看看