1.Hibernate基本介绍及下载?Hibernate优缺点?

Hibernate是一个强大的ORM框架,由GavinKing于2001年创建,用于简化Java应用程序的数据持久化。它提供了面向对象的API,减少了与JDBC交互的复杂性。文章介绍了Hibernate的基本概念,包括ORM的作用、数据持久化的必要性以及Hibernate相对于JDBC和对象序列化的优点和缺点。还详细说明了如何下载和引入Hibernate所需的jar包。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录


Hibernate专栏目录(点击进入…)



Hibernate框架简介

Hibernate由Gavin King于2001年创建的框架,它强大且高效的构建具有关系对象持久性和查询服务的Java应用程序,是一个开放源代码的ORM(对象关系映射)框架,对JDBC进行了非常轻量级的对象封装,将Java类映射到数据库表中,从Java数据类型中映射到SQL数据类型中,并把开发人员从95%的公共数据持续性编程工作中解放出来,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库,Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,Hiberante是传统Java对象和数据库服务器之间的桥梁,用来处理基于O/R映射机制和模式的那些对象。就是把数据进行持久化

在这里插入图片描述

1.Hibernate框架

数据持久化工具,也是一个开放源代码的ORM解决方案。Hibernate内部封装了通过JDBC访问数据库的操作,向上层应用提供面向对象的数据访问API

2.Hibernate是ORM解决方案

基于ORM、Hibernate在对象模型和关系数据库的表之间建立了一座桥梁,通过Hibernate,程序员就不需要再使用SQL语句操作数据库中的表,使用API直接操作JavaBean对象就可以实现数据库的存储、查询、更改和删除等操作,显著降低了由于对象与关系数据库在数据表现方面的范例不匹配导致的开发成本

使用Hibernate完成持久化操作,只需要编写如下代码:

Session session = Hibernate.currentSession();
Query query = session.createQuery(“from user”);
List<User> users = (List<User>)query.list();

Hibernate是一个自定义工具类,用于获取Hibernate的Session对象,Session是Hibernate执行持久化的核心API


数据持久化

持久化(Persistence),即把数据(如内存中的对象)保存到持久化设备,即可(理论上)永久保存的存储设备中(如磁盘)持久化的主要应用是将内存中的数据存储到关系型的数据库中,当然也可以存储在磁盘文件中、 XML 数据文件中等


为什么需要持久化?

1.内存不能持久
2.内存容量有限(内存是用于存放计算数据的)
3.业务数据共享的需要(需要公共的持久设备)
4.为了使用大规模的检索,所以要将数据改为适合大规模检索的格式
5.数据管理的需要(安全、备份)


实现持久化

1.对象序列化

即实现了Serializable接口的类,适合于少量的对象进行暂时的持久化,适合于在网络上传输对象,但不符合企业级应用的需要,因为企业应用中对数据的要求是大量的,,长时间保存的、需要进行大规模查

2.JDBC

优点:功能完备,从理论上说效率是最高的,可以存储海量的数据并且适合进行大规模检索
缺点:开发效率和维护效率低,开发难度大,代码量大,占到到总代码量的1/3,或 1/2

3.ORM

简单层次理解:ORM:Object Relational Mapping(对象关系映射),指的是将一个Java中的对象与关系型数据库中的表建立一种映射关系,从而操作对象就可以操作数据库中的表

困难层次理解:它是一种解决问题的思路(一种思想),实质就是将关系数据库中的业务数据用对象的形式表示出来,并通过面向对象的方式将这些对象组织起来,以实现系统业务逻辑;或者说,ORM就是内存中的对象与数据库中的数据间的映射关系

ORM的特点:开源,实现了JDBC的封装,实现了简单的API,轻量级解决方案,持久化对象是一个POJO类,最有名的ORM框架就是Hibernate

4.JPA 框架(标准ORM接口)

JPA(Java Persistence API),是JavaEE 5的标准ORM接口;它是一种规范、一套接口。但不是实现,用于实现这一规范的ORM很多,其中Hibernate就是之一


Hibernate优缺点

1.优点

(1)功能强大。是Java应用于关系数据库之间的桥梁
(2)支持许多面向对象的特性。如组合、继承、多态等
(3)可移植性好。对于更换数据库,通常只需更改Hibernate配置文件
(4)开源免费。开源研究源代码,改写源代码

2.缺点

(1)不适合以数据为中心大量使用存储过程的应用
(2)大规模的批量插入、修改和删除不适合用Hibernate


Jar包引入(required下所有)

lib: Hibernate开发包下
     required: Hibernate开发的必须的依赖包
     optional: Hibernate开发的可选的jar包


Hibernate所需的jar文件说明

文件描述
antlr-语法分析器
commons-collection各种集合类和集合工具类的封装
dom4jXML的读写
javassist分析、编辑和创建Java字符码的类库
jtaJava事务API
slf4j-api日志输出
hibernate-jpa-api-Final提供对JPA(Java持久化API)规范的支持

Hibernate下文件说明

在这里插入图片描述

documentation:Hibernate开发的文档

lib: Hibernate开发包
     required: Hibernate开发的必须的依赖包
     optional: Hibernate开发的可选的jar包

project: Hibernate提供的项目


Hibernate下载

1.进入官网

在这里插入图片描述

2.选择Hibernate ORM

在这里插入图片描述

3.进入Releases

在这里插入图片描述

4.选择需要的版本进入(对应JDK)

在这里插入图片描述

5.下载

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未禾

您的支持是我最宝贵的财富!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值