zoukankan      html  css  js  c++  java
  • jpa知识点

    @NotFound(action=NotFoundAction.IGNORE)

    使用hibernate 
    注解配置实体类的关联关系,在many-to-one,one-to-one关联中,一边引用自另一边的属性,如果属性值为某某的数据在数据库不存在了,hibernate默认会抛出异常。解决此问题,加上如下注解就可以了:
    @NotFound(action=NotFoundAction.IGNORE),意思是找不到引用的外键数据时忽略,NotFound默认是exception

    -------------------------------------------------------------------
    cascade = CascadeType.REFRESH,cascade=CascadeType.ALL

    cascade表示级联操作  

    Cascade 级联操作 
    CascadeType. PERSIST 级联持久化 ( 保存 ) 操作 
    CascadeType. MERGE 级联更新 ( 合并 ) 操作 
    CascadeType. REFRESH 级联刷新操作,只会查询获取操作 
    CascadeType. REMOVE 级联删除操作 
    CascadeType. ALL 级联以上全部操作 
    Fetch 抓取是否延迟加载,默认情况一的方为立即加载,多的一方为延迟加载 
    mappedBy 关系维护 
    mappedBy= "order" 表示在 OrderItem 类中的 order 属性来维护关系



    综上:大多数情况用CascadeType.MERGE就能达到级联跟新又不报错,用CascadeType.ALL时要斟酌下CascadeType.REMOVE

    @Fetch:

    定义了加载关联关系的获取策略. FetchMode 可以是

    SELECT (在需要加载关联的时候触发select操作),     SUBSELECT(只对集合有效,使用了子查询策略,详情参考Hibernate参考文档)

    JOIN (在加载主实体(owner entity)的时候使用SQL JOIN来加载关联关系).

    JOIN 将覆写任何延迟属性 (通过 JOIN策略加载的关联将不再具有延迟性).

  • 相关阅读:
    第十一周总结
    第十周总结
    实验报告(七)及第九周总结
    第六次实验及第八周总结
    第五实验报告及第七周总结
    第六周&实验四
    期末课程总结
    第十四周课程总结&实验报告(简单记事本的实现)
    第十三周课程总结
    第十二周总结
  • 原文地址:https://www.cnblogs.com/tyb1222/p/4305481.html
Copyright © 2011-2022 走看看