Hibernate - 简介

本文介绍了Hibernate与MyBatis两个流行的Java持久化框架的区别。Hibernate是一个成熟的ORM框架,允许面向对象方式操作数据库,而MyBatis则更注重灵活性与速度,要求开发者熟悉SQL语句。此外,还介绍了Hibernate的基本开发流程。

1.什么是 Hibernate ?

  • 一个框架
  • 一个 Java 领域的持久化框架
  • 一个 ORM 框架

       Hibernate:

      非常优秀、成熟的 ORM 框架。

      完成对象的持久化操作

      Hibernate 允许开发者采用面向对象的方式来操作关系数据库。

      消除那些针对特定数据库厂商的 SQL 代码

-  Hibernate 不要求持久化类继承任何父类或实现接口,这可以保证代码不被污染。这就是Hibernate被称为低侵入式设计的原因

 

       myBatis

      相比 Hibernate 灵活高,运行速度快

      开发速度慢,不支持纯粹的面向对象操作,需熟悉sql句,并且熟练使用sql语句优化功能

 2.ORM

  • ORM(Object/Relation Mapping): 对象/关系映射

  –      ORM 主要解决对象-关系的映射

  –      ORM的思想:将关系数据库中表中的记录映射成为对象,以对象的形式展现,程序员可以把对数据库的操作转化为对对象的操作

  –      ORM 采用元数据来描述对象-关系映射细节, 元数据通常采用 XML 格式, 并且存放在专门的对象-关系映射文件中.

 3.Hibernate开发步骤

–      编写持久化类: POJO + 映射文件

–      获取 Configuration 对象

–      获取 SessionFactory 对象

–      获取 Session,打开事务

–      用面向对象的方式操作数据库

–      关闭事务,关闭 Session

 

 

4.创建 Hibernate 配置文件

 

  •  hbm2ddl.auto该属性可帮助程序员实现正向工程, 即由 java 代码生成数据库脚本, 进而生成具体的表结构. 。取值 create | update | create-drop | validate

  –      create : 会根据 .hbm.xml  文件来生成数据表, 但是每次运行都会删除上一次的表 ,重新生成表, 哪怕二次没有任何改变

  –      create-drop : 会根据 .hbm.xml 文件生成表,但是SessionFactory一关闭, 表就自动删除

  –      update : 最常用的属性值,也会根据 .hbm.xml 文件生成表, 但若 .hbm.xml  文件和数据库中对应的数据表的表结构不同, Hiberante  将更新数据表结构,但不会删除已有的行和列

  –      validate : 会和数据库中的表进行比较, 若 .hbm.xml 文件中的列在数据表中不存在,则抛出异常

  •   format_sql:是否将 SQL 转化为格式良好的 SQL . 取值 true | false

 

转载于:https://www.cnblogs.com/pjlhf/p/8727630.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值