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:

  保存:

   查询:

JPA 学习笔记的更多相关文章

  1. JPA学习笔记(8)——映射一对多关联关系

    一对多关联关系 本文有很多和多对一是一样的,因此不会写得非常具体. 有看不懂的.能够參考JPA学习笔记(7)--映射多对一关联关系 Order实体类 package com.jpa.helloworl ...

  2. Spring学习---JPA学习笔记

    用了一段时间的Spring,到现在也只是处于会用的状态,对于深入一点的东西都不太了解.所以决定开始深入学习Spring. 本文主要记录JPA学习.在学习JPA之前,需要了解一些ORM的概念. ORM概 ...

  3. spring jpa 学习笔记(一) 之集成

    一.pom 配置 <?xml version="1.0"?> <project xsi:schemaLocation="http://maven.apa ...

  4. JPA学习笔记1——JPA基础

    1.JPA简介: Java持久化规范,是从EJB2.x以前的实体Bean(Entity bean)分离出来的,EJB3以后不再有实体bean,而是将实体bean放到JPA中实现.JPA是sun提出的一 ...

  5. JPA学习笔记

    一.JPA基础1.1 JPA基础JPA: java persistence api 支持XML.JDK5.0注解俩种元数据的形式,是SUN公司引入的JPA ORM规范 元数据:对象和表之间的映射关系 ...

  6. JPA学习笔记(8)——映射双向一对多关联关系

    双向一对多关联关系 前面的博客讲的都是单向的,而本问讲的是双向的(双向一对多 = 双向多对一) 什么是双向? 我们来对照一下单向和双向 单向/双向 User实体类中是否有List< Order& ...

  7. spring data jpa 学习笔记

    springboot 集成 springData Jpa 1.在pom.xml添加依赖 <!-- SpringData-Jpa依赖--> <dependency <groupI ...

  8. Spring JPA学习笔记

    目录 什么是JPA? 引入配置 新建一个Entity Bean类 JPA的增删改查 新建操作接口 新建测试类 总结 什么是JPA? 什么是JDBC知道吧?数据库有Mysql,SQL Server,Or ...

  9. JPA学习笔记(3)——JPA注解

    Entity Table Id GeneratedValue Basic Column Transient Temporal @Entity @Entity 标注用于实体类声明语句之前.指出该Java ...

  10. JPA学习笔记1——JPA基础 (转自CSDN)

    http://blog.csdn.net/chjttony/article/details/6086298 1.JPA简介: Java持久化规范,是从EJB2.x以前的实体Bean(Entity be ...

随机推荐

  1. IDEA tomcat热部署方法

    项目开发过程中,我们一般希望在修改完代码之后不重启项目即可提现出修改的结果,那么热部署项目就显得十分必要了.在idea中将项目热部署至tomcat中的方法如下: 首先打开tomcat配置界面,在ser ...

  2. fpga新建nios

    [FPGA]基于Qsys的第一个Nios II系统设计 (2013-12-12 21:50:08) 转载▼ 标签: fpga niosii qsys helloword quartusii 分类: 嵌 ...

  3. VS2017报错:未提供初始值设定项

    今天在使用VS2017写程序时,报错: 出错的代码如下: #include "pch.h" #include <iostream> #include <threa ...

  4. SSM常用配置文件头模板

    web.xml文件头 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=&q ...

  5. 深入理解MySql事务

    事务是MySQL等关系型数据库区别于NoSQL的重要方面,是保证数据一致性的重要手段.本文将首先介绍MySQL事务相关的基础概念,然后介绍事务的ACID特性,并分析其实现原理. MySQL博大精深,文 ...

  6. [原创]PHP代码修正之CodeSniffer

    目录 参考链接 介绍 安装 使用 命令行模式 PHPStorm 让编辑器使用PSR-2标准 集成phpcbf 参考链接 PHP开发规范之使用phpcbf脚本自动修正代码格式 在PhpStorm中使用P ...

  7. 【GDOI2016模拟3.9】暴走的图灵机

    题目 分析 我们发现当两个字符串合并时,a0.a1表示左右两个字符串中有多少个T,C表示合并处新增的T的个数,那么 a0=a1 a1=a0+a1+C 令s0和s1表示左右手两个字符串,那么每一次操作后 ...

  8. js去重的es6做法和es5做法

    1.es5做法var array=[1,3,4,5,2,3,4,5,5,5];var ob={};var result=[];array.forEach(function (a) { var key= ...

  9. Golang在京东列表页实践总结

    Golang在京东列表页实践总结 作者:张洪涛 10余年软件开发和设计经验,曾就职于搜狐.搜狗.前matrixjoy公司联合创始人.甘普科技CTO. 目前线上状态 基于搜索实现: 全量数据,搜索结果不 ...

  10. 跳马(Knight Moves), ZOJ1091, POJ2243 x

    跳马(Knight Moves), ZOJ1091, POJ2243 题目描述: 给定象棋棋盘上两个位置 a 和 b,编写程序,计算马从位置 a 跳到位置 b 所需步数的最小值. 输入描述: 输入文件 ...