美文网首页
Hibernate框架数据库操作

Hibernate框架数据库操作

作者: Playbob | 来源:发表于2017-04-20 18:21 被阅读53次

表与表之间的关系

一对一 (使用一张表即可达到效果)

使用一张表即可达到效果

一对多

客户和联系人 ---> 一对多关系 (一个客户有多个联系人)

  • 客户 : 与公司有业务往来,百度,新浪,360
  • 联系人 :公司里的员工
一对多

创建实体类

客户类 联系人类

配置一对多映射

one-to-many many-to-one 级联添加 级联删除 级联修改

inverse属性

(1) 因为Hibernate中双向维护外键,因此级联操作时会重复操作外键,影响效率
(2) 解决方式:让其中一方不维护外键(让“一”的一方放弃维护外键)
(3)具体实现:


使用inverse属性

多对多


多对多
多对多建表
多对多 Role配置 User配置

多对多添加:

添加配置 添加代码

多对多删除(一般不进行这样的操作,可通过修改对三张表来维护关系)

删除配置 删除代码

维护第三张表

维护第三张表 添加角色 删除角色

Hibernate 多种查询方式

Hibernate多种查询方式

对象导航查询

对象导航查询

oid 查询

oid 查询

hql 查询

hql 查询 hql查询 hql条件查询 模糊查询 排序查询 分页查询

投影查询:(查询部分字段的查询成为投影查询)

投影查询 投影查询

聚集函数查询


聚集函数查询 聚集函数查询

QBC 查询

QBC查询所有 QBC 条件查询 条件api QBC排序查询 QBC分页查询 QBC统计查询 离线查询
内链接查询:查询出两张表关联的数据,未关联的数据无法查出
内链接查询
左外链接(显示左边表的全部数据,右边表的关联数据)
左外链接
右外链接(显示右边表的全部数据,左边表的关联数据)
右外链接
hql 多表查询
多表查询类型 内连接查询 迫切内连接查询 左外连接 左外连接查询 左外迫切连接

查询策略

查询策略

延迟查询分类两类:

  • 类级别延迟: 根据id查询返回实体对象,调用load方法不会马上发送语句

  • 关联级别延迟 : 查询关联数据时进行延迟(Hibernate 默认已做延迟处理)

延迟策略 及其懒惰
批量抓取( 查询出客户后又需要查询每个客户的联系人,通过配置 batch-size 可已提高查询效率,减少查询此时 )
批量抓取优化查询次数

相关文章

  • Hibernate(3.0)_Hibernate单表的增删改查

    在项目中搭建好了Hibernate框架之后,就可以直接用Hibernate进行数据库的一些操作了 搭建数据库 首先...

  • Hibernate(01)

    首先认识Hibernate框架是ORM关系映射框架, 工作在持久(dao)层,用对象的方式操作sql数据库 优点:...

  • 6.hibernate的flush函数

    hibernate的flush和操作方式 操作hibernate不是直接操作数据库,hibernate在其中又加入...

  • Hibernate入门1

    1.是什么? Hibernate是一个操作数据库的框架,实现了对JDBC的封装 Hibernate与JDBC的对比...

  • hibernate初识

    hibernate框架 Hibernate框架简化了java应用程序与数据库交互的开发。 Hibernate是一个...

  • hibernateTemplate配置使用

    操作数据库可以使用hibernate框架的hibernateTemplate来实现。 在spring与hibern...

  • Hibernate初识

    Hibernate框架Hibernate框架简化了java应用程序与数据库交互的开发。Hibernate是一个开源...

  • 记录Hibernate的搭建过程

    Hibernate是ssh框架中的数据库部分,它采用的是ORM的思想即通过操作实体类对象去操作数据库。PART_O...

  • Hibernate框架数据库操作

    表与表之间的关系 一对一 (使用一张表即可达到效果) 使用一张表即可达到效果 一对多 客户和联系人 ---> 一...

  • Hibernate笔记Day01

    Hibernate概述 ORM(对象关系映射)框架;操作对象就相当于操作数据库的表结构; 原理:使用映射的配置文件...

网友评论

      本文标题:Hibernate框架数据库操作

      本文链接:https://www.haomeiwen.com/subject/enblzttx.html