首先要明确Hibernate是对JDBC进行轻量级封装的ORM(对象关系映射)框架,处于项目的持久层。
Hibernate的基础是JAVA的反射机制!
为什么需要Hibernate?
在下面的项目的模型中,如果要更换底层的数据库类型,那么就势必要大量改写业务层的数据库操作代码!
此时,业务层的对象模型和数据库的关系模式形成了阻抗,即耦合性太强!会给开发带来很大的难度!
因此,我们可以将业务层的逻辑和数据库进行解耦合,如何接耦合?就是我们Hibernate干的事了。
Hibernate创造持久层,将数据库的关系模式进行对象化,我们在业务层直接操作对象,而无需关注底层数据库的JDBC,这些其余的和数据库的交道都是持久层在做!
使用Hibernate的好处是:
1)分层更加清晰,减小了耦合性
2)通用型更强,可以轻松切换底层的数据库的类型
3)对象化,把关系型的数据库转变为java对象,我们在业务层直接操作java对象。
4)性能保证。(分等算法)
5)增加了程序的鲁棒性。
学习Hibernate的重点在:
1)API
2)Hibernate.cfg.xml 核心配置文件
3)对象映射文件