zoukankan      html  css  js  c++  java
  • JPA 学习笔记

    eclipse 新建jpa项目 :

    修改 persistence.xml 文件

    创建 Customer 类:

          column 名称和数据库名称对应则不用写

    类写好后在 persistence.xml 添加持久化类:

    编写main方法:

      右键运行 数据库自动创建:数据插入数据库

    JPA基本注解:

      一般讲注解加到 get方法上面:

      如果entity 中有列名没有加注解 就相当于自动加上了 @Basic 注解

      entity中不需要映射到数据库表的一列 可以加 @Transient

     创建默认 birth,createdTime 数据库生成样式:

      birth createdTime 类型是 datatime 类型:

    重新设置后:createdTime 精确到时分秒 birth 精确到 日期

     

    业务场景不是很多:

        pkColumnName -》 PK_NAME 确定列

        pkColumnValue -CUSTOMER_ID 确定第几行

        valueColumnName -》确定初始化值 

        allocationSize-》每次增长多少

       Find方法 调用方法直接发sql语句 :

      getReference 方法调用不发sql, 用到 查询出结果时候才发出sql 懒加载:

      persistence 方法类似save方法 有些许不同:

      hibernate delete方法:new customer 不能进行移除 只有查询出来的可以移除

      hibernate saveOrUpdate 方法:

     

     

        如果是hibernate session关联2个数据不能进行saveOrUpdate方法 已经有ID=4的数据 并且数据库有数据 entityManager 关联 customer 1,2 JPA可以进行merge:

        类似  

     ----------------------------------------------------------------------------------------------------------------------------------------------------

     

      和hibernate session  中 flush 方法相同。

     

     ----------------------------------------------------------------------------------------------------------------------------------------------------------------

                    关联关系:

     ----------------------------------------------------------------------------------------------------------------------------------------------------------------

      单向多对一:

    多个order 对应一个 Customer

       保存:

      懒加载ManyToOne:fetch lazy

     

      删除:

      修改:

      单向一对多:

     

      保存:

       查询:加载方式也可以修改 Customer 类中 getOrder 方法 @OneToMany fetch 属性修改加载策略

     

      修改:可以级联删除 级联制空

     

      修改:set直接就update了??????????

     

       双向多对一:

       上面两种情况同时打开就是双向多对一 也就是双向一对多:

        customer 

        order 

      保存:

     

          放弃维护关系:Customer类中 设置 mappedBy="customer"

     

      双向一对一:

      经理和部门关系:

      department:

     

     

      manager:

     

     

      保存:

     

       查询:

     

     

  • 相关阅读:
    虚树学习笔记
    CF487E Tourists
    [HNOI/AHOI2018]毒瘤
    [HEOI2014]大工程
    hive初始化元数据报错
    layui简单的两个页面
    springboot配置swagger信息入门2
    spark连接hive出现错误,javax.jdo.JDODataStoreException: Required table missing : "`DBS`" in Catalog "" Schema ""
    springboot整合shiro关于任务入门3
    Flink部署Standalone模式
  • 原文地址:https://www.cnblogs.com/lixuchun/p/9176275.html
Copyright © 2011-2022 走看看