什么是Hibernate ORM框架/持久层框架?

hibernate的简单介绍

是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库
优势:跨数据库的无缝移植

hibernate的生命周期

在这里插入图片描述

hibernate核心类和接口的作用

详细说明链接: https://blog.csdn.net/chidou1692/article/details/100641364.
在这里插入图片描述

hibernate核心API简单讲解

Configuration:

Hibernate的配置对象,主要是用于加载Hibernate的核心配置文件,如读取hibernate.cfg.xml

SessionFactory:

Session工厂,用到了Java中的工厂模式;主要用于初始化hibernate,充当数据存储源的代理,并负责创建session对象

Session:

类似Connection的连接对象,代表的是Hibernate与数据库的连接对象(与数据库交互的桥梁),而且它不是线程安全的。
如何解决安全问题?

  • SessionFactory.openSession():相当于直接通过SessionFactory创建一个新的Session,使用完成后要手动调用close()方法来关闭;
  • SessionFactory.getCurrentSession():获取一个与线程绑定的Session,当我们提交事务或事务回滚后会自动关闭。

Session的常用方法
在这里插入图片描述
常用方法详解:

save保存方法 主要用作保存对象
get/load 查询方法 简单说: get:会忽略加载策略,永远使用立即加载 load:默认使用延迟加载,会根据配置文件减少延迟加载
相同点:都是根据id来查询对象
不同点:getl立即加载,load延迟加载
get返回对象本身,load利用了代理返回代理对象
get查询不到对象返回null,load查询不到对象返回ObjectNotFoundException异常
一般情况下,推荐使用get
delete 删除方法先查再删除,保证程序的健壮性
update修改方法 先查再改/局部修改
Transaction 事务对象 分自动事务和手动事务
Query 查询所有 查全部/批量修改或删除

详细可见:https://blog.csdn.net/yerenyuan_pku/article/details/98478888.

hibernate管理对象的三种状态

在这里插入图片描述

如何在项目中添加hibernate支持(手动添加)

  一、添加hibernate相关依赖
   在resource目录下添加hibernate.cfg.xml(核心配置文件)
    1.1 添加DTD支持
    1.2 添加Hibernate的配置
      1.1.1 数据库相关(connection.username|connection.password|connection.url|connection.driver_class|dialect)
      1.2.2 调试相关(show_sql|format_sql)
  二、在开发阶段再创建实体类和实体映射文件(*.hbm.xml)
      实体必须实现Serializable接口
      注意:实体映射文件一定要加到核心配置文件

如何使用hibernate完成CRUD操作

一、 CRUD操作步骤
1 读取配置
2 创建SessionFactory
3 打开Session
4 开启事务
5 CURD
6 提交事务/回滚事务
7 关闭Session
二、 注意事项
1 hibernate默认使用的是手动事务,因此必须显示的开启和提交事务
2 删除操作时,必须先查再删

1


  1. 编写不易,如果有帮助到的话,可以关注,点赞和收藏哦~ ↩︎

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值