
Hibernate
yigg
追逐成功的路上只有逆风
展开
-
hibernate面试题
什么是ORM? 对象关系映射(Object-Relational Mapping,简称ORM)是一种为了解决程序的面向对象模型与数据库的关系模型互不匹配问题的技术;简单的说,ORM是通过使用描述对象和数据库之间映射的元数据(在Java中可以用XML或者是注解),将程序中的对象自动持久化到关系数据库中或者将关系数据库表中的行转换成Java对象,其本质上就是将数据从一种形式转换到另外一种形式。 持...原创 2019-10-13 10:57:22 · 264 阅读 · 0 评论 -
hibernate总结
目录:基础 Hibernate ORM 概览 Hibernate 简介 Hibernate 架构 Hibernate 环境 Hibernate 配置 Hibernate 会话Session Hibernate 持久化类 Hibernate 映射文件 Hibernate 映射类型 Hibernate 例子 Hibernate O/R 映射 Hiber...原创 2018-11-06 11:13:00 · 216 阅读 · 1 评论 -
Hibernate(13)- 两种session方式
Hibernate有两种方式获得session,分别是:openSession和getCurrentSession他们的区别在于获取的是否是同一个session对象 openSession每次都会得到一个新的Session对象 getCurrentSession在同一个线程中,每次都是获取相同的Session对象,但是在不同的线程中获取的是不同的Session对象 事务提交...原创 2019-09-03 12:04:56 · 131 阅读 · 0 评论 -
Hibernate(12)- 一级缓存、二级缓存
一.Hibernate缓存缓存(Cache):计算机领域非常通用的概念。它介于应用程序和永久性数据存储源(如硬盘上的文件或数据库)之间,其作用是降低应用程序直接读写永久性数据存储源的频率,从而提高应用的运行性能。缓存中的数据是数据存储源中数据的拷贝。缓存的物理介质通常是内存,有时候也会是硬盘(当缓存的文件过大时,占用太多的内存)Hibernate中提供了两个级别的缓存:第一级别的缓存是...原创 2019-09-03 11:50:11 · 183 阅读 · 0 评论 -
Hibernate(11)- 查询方式(2)
一.QBC检索1.概念QBC查询就是通过使用Hibernate提供的Query By Criteria API来查询对象,这种API封装了SQL语句的动态拼装,对查询提供了更加面向对象的功能接口2.步骤HQL所能做的事情,使用QBC也大多能做用,这个通过实例来看看QBC是如何使用的。 步骤:获得session 创建criteria对象:session.createCrit...原创 2019-09-03 11:09:14 · 110 阅读 · 0 评论 -
Hibernate(10)- 查询方式
一.hibernate中的5种检索方式导航对象图检索方式:根据已经加载的对象导航到其他对象 OID检索方式 HQL检索方式 QBC检索 本地SQL查询:使用标准的SQL语句来编写二.导航对象图检索方式例如:在前面的各种映射关系中,实体类包含对其他类对象的引用。Dept d = (Dept) session.get(Dept.class,2);d.getStaffSe...原创 2019-09-03 01:09:44 · 220 阅读 · 0 评论 -
Hibernate(9)- hibernate_检索策略(两种获取方式(get和load)和lazy、fetch、batch-size等)
一、概述检索策略分2大块,类级别检索策略和关联级别检测策略。类级别检索策略:get、load 关联级别检索策略:order.getCustomer().getName()上面这两种应该是看得懂的。很容易去理解,现在就具体来说说这两种其中的细节。批量检索解决n+1问题。hibernate中的延迟加载(lazyload)分属性的延迟加载和关系的延迟加载属性的延迟加载:当使用...原创 2019-09-03 00:53:05 · 240 阅读 · 0 评论 -
Hibernate(8)- O/R 映射
一.O/R 映射目前为止我们已经通过应用 Hibernate 见识过十分基础的 O/R 映射了,但是还有三个更加重要的有关映射的话题需要我们更详细的探讨。这三个话题是集合的映射,实体类之间的关联映射以及组件映射。二.集合映射如果一个实例或者类中有特定变量的值的集合,那么我们可以应用 Java 中的任何的可用的接口来映射这些值。Hibernate 可以保存java.util.Ma...原创 2019-09-03 00:15:58 · 389 阅读 · 0 评论 -
Hibernate(7)- Hibernate映射文件详解(***.hbm.xml)
一.作用Hibernate的持久化类和关系数据库之间的映射通常是用一个XML文档来定义的。该文档通过一系列XML元素的配置,来将持久化类与数据库表之间建立起一一映射。这意味着映射文档是按照持久化类的定义来创建的,而不是表的定义。二.Hibernate映射文件主要内容映射内容的定义: Hibernate映射文件由<hibernate-mapping package="Jav...原创 2019-09-02 23:28:22 · 1940 阅读 · 0 评论 -
Hibernate(6)- Hibernate配置文件(hibernate.cfg.xml)
1.Hibernate配置文件Hibernate配置文件主要用于配置数据库连接和Hibernate运行时所需的各种属性 每个Hibernate配置文件对应一个Configuration对象 Hibernate配置文件可以有两种格式:hibernate.properties 和hibernate.cfg.xml2.hibernate.cfg.xml的常用属性JDBC连接属性 ...原创 2019-09-02 22:24:43 · 378 阅读 · 0 评论 -
Hibernate(5)- 对象状态
一.概念实体类对象在Hibernate中有4种状态 :分别是瞬时,持久,游离和删除瞬时指的是没有和hibernate发生任何关系,在数据库中也没有对应的记录,一旦JVM结束,这个对象也就消失了 ,比作公司未正式入职的职员 在使用代理主键的情况下,OID通常为null 不处于Session的缓存中 在数据库中没有对应的记录 持久指得是一个对象和hibernate发生联系...原创 2019-09-02 22:03:50 · 214 阅读 · 0 评论 -
Hibernate(4)- Session会话
1.Session概述Session接口数Hibernate提供的操作数据库的最主要的接口,这个接口中有一系列更新,删除,保存和加载(根据唯一的UID将数据记录转换为对象到内存中)的方法。 Seesion的对象具有一个一级的缓存,位于一级缓存中的对象称之为持久化的对象(这些对象和数据库中的一些记录一一对应)。Session可以在某些时间点按照缓存中对象的变化来执行相关的SQL语句,来同步更...原创 2019-09-02 21:33:32 · 200 阅读 · 0 评论 -
Hibernate(3)- hello hibernate详解
详细讲解一下这个hello hibernate程序的各个部分的内容创建一个用于持久化的Java类 必须有一个无参的构造器用于反射创建对象。因为在持久化类对应的hbm.xml文件中声明了class和table的映射关系,而class使用的是全类名,而一提到全类名,我们就应该想到反射创建对象;而且我们在使用Hibernate的API访问数据库时,即使我们没有使用session的操作数据库的方法,...原创 2019-09-02 20:57:02 · 163 阅读 · 0 评论 -
Hibernate(2)- hello hibernate
http://how2j.cn/k/hibernate/hibernate-tutorial/31.html#nowhere原创 2019-09-02 20:41:50 · 110 阅读 · 0 评论 -
Hibernate(1)- 概述
官方文档:hibernate 3.5版本中文文档 hibernate 6.0 最新版本英文文档hibernate各版本一.简介Hibernate 是一个开放源代码的ORM(对象关系映射)框架,也是一个Java 领域的持久化框架。它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate 可以应用在...原创 2019-09-02 19:17:58 · 176 阅读 · 0 评论