Hibernate学习初探

来源:互联网 发布:数据库数据处理 编辑:程序博客网 时间:2024/06/07 17:44

        今天在开发java web程序时,遇到了Hibernate中Session的问题,未通过页面登录而是使用servlet想直接调用框架内的登录函数,涉及到查询,但是Hibernate中用于数据库的查询必须通过Session对象来完成,因此在这个地方又迷茫了,之前想去这样写归根结底是因为对框架的理解不深入,因此今天再来学习一下Hibernate,一个对象关系映射框架。

 

        Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了轻量级的对象封装。它不仅提供了从Java类到数据表之间的映射,也提供了查询和事务机制。相对于使用JDBC和SQL来手工操作数据库,Hibernate大大减少了操作数据库的工作量。

        Hibernate是封装了JDBC的一种开源的对象/关系映射(Object-Relation Mapping,ORM)框架,使程序员可以使用面向对象的思维来操作数据库。     

Hibernate是目前最流行的ORM框架,它是一个面向Java环境的对象/关系数据库映射工具,是面向对象的程序设计语言和关系数据库之间的桥梁,Hibernate真正实现了开发者采用面向对象的方式来操作关系数据库。

1. 数据持久化的概念

    程序中的数据以某种形式保存到某存贮介质中就称为数据的持久化。有多种技术可以实现数据的持久化:

(1)Serialization:序列化,可将对象存储到文件中。

(2)JDBC:可将对象存储到数据库中。

(3)对象关系映射(ORM):可将对象通过对象/关系映射存储到关系数据库中。

(4)对象数据库(ODB):以对象为存储单位的新型数据库。

2.ORM

        ORM的全称是Object/RelationMapping,即对象/关系映射,是为了解决关系数据库和面向对象模型不匹配而产生的一门非常实用的工程技术,它实现了程序对象到关系数据库数据的映射,允许开发者采用面向对象的方式操作数据库。

        目前ORM框架的产品非常多,Hibernate是目前最流行的ORM框架,已经被选作JBoss的持久层解决方案。

Hibernate结构体系如:

 

由图看到,对于使用Hibernate框架的开发者,主要任务是:设计PO类、编写Hibernate配置文件和映射文件,然后利用Hibernate API来操作数据库。

        Hibernate通过配置文件(hibernate.properties或hibernate.cfg.xml)和映射文件(*.hbm.xml)把Java对象或持久化对象(PersistenceObject,PO)映射到数据库的表格,然后通过操作PO,对数据库中的数据进行增、删、改、查等操作。

 



0 0