一、JPQL

JPA的查询语言(和SQL非常像,面向对象的查询语言)

有list集合可以用size看长度

分页:setFirstResult().setMaxResults();

获取总条数:getSingleResult(),类型为Long

原生Sql:creatNative(sql,类.class)

二、关联黄金法则

1.不写on(不需要消除笛卡尔积)

2.关联的是前面对象的别名.属性

三、事务并发(乐观锁)

事务四大属性:

ACID

原子性 (Atomic)、一致性(Consistent)、隔离性(Insulation)、持久性(Duration)

隔离性:由事务并发所做的修改必须与任何其他并发事务所做的修改隔离

脏读、幻读(虚读)、不可重复读:这三类由JPA解决

第一类丢失更新、第二类丢失更新(写代码解决:加锁(悲观锁,乐观锁))

隔离机制(隔离级别):

READ UNCOMMITTED

READ COMMITTED

REPEATABLEREAD

SERIALIZABLE

乐观锁:

@version,版本号

JPA-04的更多相关文章

  1. Spring Data JPA进阶——Specifications和Querydsl

    Spring Data JPA进阶--Specifications和Querydsl 本篇介绍一下spring Data JPA中能为数据访问程序的开发带来更多便利的特性,我们知道,Spring Da ...

  2. JPA字段映射(uuid,日期,枚举,@Lob)

    转:http://www.cnblogs.com/tazi/archive/2012/01/04/2311588.html 主键: JPA主键的生成策略不像Hibernate那么丰富. @Id @Ge ...

  3. ubuntu14.04 64位 安装eclipse

    ubuntu14.04 64位 安装eclipse 1 在官网上下载eclipse http://www.eclipse.org/downloads/下载eclipse-jee-luna-SR1-li ...

  4. 工具篇-Spring boot JPA多数据源

    写这篇博文是因为这个东西坑太多,首先说明下边实现的多数据源不是动态切换的,应该算是静态的. 坑一.pom文件 pom中spring boot以及mysql connector的版本一定要注意. < ...

  5. 6.4 SpringData JPA的使用

    引言:该文档是参考尚硅谷的关于springboot教学视屏后整理而来.当然后面还加入了一些自己从网上收集整理而来的案例! 一.SpringData JPA初步使用 1. springdata简介 2. ...

  6. Spring data Jpa,Mybatis,读写锁,@Lock 使用

    Spring data jpa 支持注解式的读写锁(悲观锁),实际上这个东西硬编码也简单,但是基于Jpa 命名方式定义的Sql,只能用注解添加支持读写锁了, 不了解读写锁的可以点这里 mysql读写锁 ...

  7. EJB3与JPA的关系

    转载自http://www.cnblogs.com/o-andy-o/archive/2012/04/17/2453537.html JPA是基于Java持久化的解决方案,主要是为了解决ORM框架的差 ...

  8. EJB与JPA的关系

    转自:http://www.cnblogs.com/o-andy-o/archive/2012/04/17/2453537.html JPA是基于Java持久化的解决方案,主要是为了解决ORM框架的差 ...

  9. Spring JPA配置讲解

    JPA是Java EE5规范之一,是一个orm规范,由厂商来实现该规范.目前有hibernate,OpenJPA,TopLink和EclipseJPA等实现 Spring提供三种方法集成JPA: 1. ...

  10. Spring : JPA的单独使用

    title: 如何单独使用spring data jpa 引用pom文件: <dependency> <groupId>org.springframework.data< ...

随机推荐

  1. NPOI 修改已存在的excel文件,设置第一行行高

    FileStream fileStream = new FileStream(@FileName, FileMode.Open, FileAccess.Read); FileStream fileSt ...

  2. Android 获取View在屏幕中的位置【转】

    Android 获取View在屏幕中的位置 https://blog.csdn.net/lonely_fireworks/article/details/7849643

  3. celery(一) application

    Application application celery在使用之前,必须首先实例化.e.g. app = Celery() app 是线程安全的,即:不同配置.组件和任务的多个app可以共存在同一 ...

  4. win10 开发mfc 64位 ocx控件

    问题1.模块“XXX.ocx”加载失败 解决办法:项目--〉属性--〉常规-〉配置类型-〉  动态库(.dll) 修改为 静态库(.lib) 问题2.1>x64\Release\stdafx.o ...

  5. python学习Day9 内存管理

    复习 :文件处理 1. 操作文件的三步骤:-- 打开文件:此时该文件在硬盘的空间被操作系统持有 |  文件对象被应用程序持用 -- 操作文件:读写操作 -- 释放文件:释放操作系统对文件在硬盘间的持有 ...

  6. JS应用猜数游戏

    (function(){ let rs = require("readline-sync"); let guessNumber = new Set(); function getN ...

  7. 什么是云?Iaas,Paas和SaaS

    周围的朋友听说我是做云相关的,总是爱问啥是云?别不是虚幻的概念吧.云计算当然不是虚幻的概念,“云”其实是互联网的一个隐喻,简单地说,云计算是通过Internet(“云”)交付计算服务——服务器.存储. ...

  8. windows yii2 配置redis

    1 安装redis https://blog.csdn.net/gaotanpan3666/article/details/83047081 安装redis 2  yii安装redis扩展 compo ...

  9. python 网络编程粘包解决方案2 + ftp上传 + socketserver

    一.struct 神奇的打包工具 struct 代码: import struct num = 156 #将int类型的数据打包成4个字节的数据 num_stru = struct.pack('i', ...

  10. pythond的icmp广播报获取局域网主机IP

    icmp广播报获取局域网四川特产IP from scapy.all import *import randomimport threading def scan(sip,dip): pkt = Eth ...