1. 什么是Hibernate:
框架:软件的半成品,完成部分功能代码.
Hibernate:Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
Hibernate是轻量级JavaEE应用的持久层解决方案,是一个关系数据库ORM框架.
- ORM:Object Relational Mapping.
- 传统方式开发:
- 持久层:
- 编写SQL.执行SQL. String sql = “insert into 表 values (?,?,?...)”;
- 开发语言Java:面向对象.
- 数据库:MySQL(关系型的数据库.)
- 将Java中的实体类与数据库的关系表建立一个映射.就可以操作Java中对象,从而操作数据库.
***** Hibernate就是一个持久层的ORM的框架.
常见的持久层框架:
* Hibernate :
* JPA :JPA Java Persistence API.JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系(只有接口规范)
* MyBatis :前身Ibatis.
* DbUtils :
* 企业开发两套架构:
* SSH:Struts2 + Spring + Hibernate
* SSI:SpringMVC + Spring + Ibatis
2. 为什么要学习Hibernate:
-
-
- Hibernate对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码
- Hibernate是一个基于jdbc的主流持久化框架,是一个优秀的orm实现,它很大程度的简化了dao层编码工作
- Hibernate使用java的反射机制,而不是字节码增强程序类实现透明性
- Hibernate的性能非常好,因为它是一个轻量级框架。映射的灵活性很出色。它支持很多关系型数据库,从一对一到多对多的各种复杂关系.
-
Hibernate版本:
Hibernate3.x版本 和 Hibernate4.x
* 企业中常用的还是Hibernate3.x.