JPA学习
【JPA 简介】JPA(Java Persistence API)
JPA 不是一个ORM 的框架, 而是一个ORM 的规范,只指定了一些接口, 具体的实现由应用服务器厂商来提供实现。 JPA的实现产品有Hibernate 、Toplink 等,JBoss 服务器底层就以HIbernate 作为实现, Glassfish 服务器底层以Toplink 作为实现。 一句话来说, JPA 是 hibernate 和 Toplink 的更高级抽象, 可以实现一次编码,底层ORM框架任意切换。使用JPA 开发出来的应用,不再依赖某一个持久化框架,可以在不修改代码的情况 下在任何JPA 环境下运行,真正做到低耦合。
【JPA 主要内容】
JPA 主要又三方面内容:
--> 映射元数据 Entity:
--> 持久化API
--> 查询语言 JPQL:
【JPA 总结】
JPA 和 Hibernate 类似, 在进行单表操作和 两个表关联的时候使用起来非常方便,但是在多表关系比较复杂的时候,就很难驾驭JPA。根据笔者的开发经验,在多表关系复杂的情况下使用JPA 或 Hibernate 时,一般都会采用隐式外键,外键的业务逻辑放到代码中来做,这样开发会比较方便。
JPA学习的更多相关文章
- JPA学习---第一节:JPA详解
一.详解 JPA JPA(Java Persistence API)是Sun官方提出的Java持久化规范.它为Java开发人员提供了一种对象/关系映射工具来管理Java应用中的关系数据.他的出现主要是 ...
- Spring学习---JPA学习笔记
用了一段时间的Spring,到现在也只是处于会用的状态,对于深入一点的东西都不太了解.所以决定开始深入学习Spring. 本文主要记录JPA学习.在学习JPA之前,需要了解一些ORM的概念. ORM概 ...
- JPA学习笔记(8)——映射一对多关联关系
一对多关联关系 本文有很多和多对一是一样的,因此不会写得非常具体. 有看不懂的.能够參考JPA学习笔记(7)--映射多对一关联关系 Order实体类 package com.jpa.helloworl ...
- JPA学习(六、JPA_JPQL)
框架学习之JPA(六) JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 ...
- JPA学习(五、JPA_二级缓存)
框架学习之JPA(五) JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 ...
- JPA学习(四、JPA_映射关联关系)
框架学习之JPA(四) JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 ...
- JPA学习(三、JPA_API)
框架学习之JPA(三) JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 ...
- JPA学习(二、JPA_基本注解)
框架学习之JPA(二) JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 ...
- JPA学习(一、JPA_Hello World)
框架学习之JPA(一) JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 ...
- Spring Data JPA 学习记录1 -- 单向1:N关联的一些问题
开新坑 开新坑了(笑)....公司项目使用的是Spring Data JPA做持久化框架....学习了一段时间以后发现了一点值得注意的小问题.....与大家分享 主要是针对1:N单向关联产生的一系列问 ...
随机推荐
- 【BZOJ1071】[SCOI2007]组队(神仙题)
[BZOJ1071][SCOI2007]组队(神仙题) 题面 BZOJ 洛谷 题解 首先把式子整理一下,也就是\(A*h+B*v\le C+A*minH+B*minV\) 我们正常能够想到的做法是钦定 ...
- Mac安装mysql8.0.12
···shell 下载 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.12-macos10.13-x86_64.tar.gz ...
- 新年的展望,2018 hello world~
虽然离$2017$到$2018$的跨年已经过去很久了,但还是想写点东西试图拯救一下最近有些颓势的自己~ $2017$对我来说是意义重大的一年,这一年里,我有欢笑也有泪水,有收获也有挫折,有坚强也有脆弱 ...
- java web 验证码-数字不变形
controller代码: import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.a ...
- pi的求法 acos(-1.0)
pi=acos(-1.0) https://www.luogu.org/problemnew/show/T4529 #include <cstdio> #include <cstdl ...
- DCT变换、DCT反变换、分块DCT变换
一.引言 DCT变换的全称是离散余弦变换(Discrete Cosine Transform),主要用于将数据或图像的压缩,能够将空域的信号转换到频域上,具有良好的去相关性的性能.DCT变换本身是无损 ...
- Spark记录-Scala循环语句
Scala while循环语句 当给定条件为真时,while循环重复一个语句或一组语句.它在执行循环体之前测试条件状态. 只要给定的条件为真,while循环语句重复执行目标语句. object Dem ...
- C++ map & set
山东第六届ACM省赛B题 超时代码: #include<iostream> #include<cstdio> #include<string.h> #include ...
- html canvas非正方旋转和缩放...写的大多是正方的有人表示一直看正方的看厌了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 跨域请求:JSONP
在JavaScript中,有一个很重要的安全性限制,被称为"同源策略".即JavaScript只能访问与包含它的文档在同一域下的内容.然而,当进行一些比较深入的前端编程的时候,不可 ...