选用Ibatis和Hibernate的区别

hibernate简介

hibernate是一个开放源代码的对象关系映射框架,它对jdbc进行了非常轻量级的对象封装,使得 java程序员可以随心所欲的使用对象编程思维来操纵数据库.hibernate可以应用在任何使用jdbc的场合,既可以在java的客户端程序使用,也可以在servlet/jsp的web应用中使用,最具革命意义的是,hibernate可以在应用ejb的j2ee架构中取代cmp,完成数据持久化的重任.

一、基本功能

hibernate作为数据持久化的中间件,足以让数据库在业务逻辑层开发中去冬眠.它通过可扩展标记语言(xml)实现了类和数据表之间的映射,使程序员在业务逻辑的开发中面向数据库而改为面向对象开发.使整个项目开发分工更加明确,提高了程序开发的效率.

configuration对象:

configuration 类负责管理hibernate 的配置信息.hibernate 运行时需要

获取一些底层实现的基本信息,其中几个关键属性包括:

数据库url

数据库用户

数据库用户密码

数据库jdbc驱动类

数据库dialect,用于对特定数据库提供支持,其中包含了针对特定数据库特性的实现,如hibernate数据类型到特定数据库数据类型的映射等.

以上信息一般情况下由hibernate.cfg.xml或者hibernate.properties文件来配置,实现与不同数据库的连接.

session对象:

session是持久层操作的基础,相当于jdbc中的connection:

实例通过 sessionfactory实例构建:

configuration config = new configuration().configure();

sessionfactory sessionfactory = config.buildsessionfactory();

session session = sessionfactory.opensession();

之后我们就可以调用session所提供的save、find、 flush等方法完成持久层操作.因此session对象也封装了所有对数据库的操作来实现hibernate对数据库的操纵功能,如:

save()方法实现增加和保存;

delete()方法实现数据的删除;

update()方法实现数据更新和修改;

find()方法实现数据的检索;

hibernate会根据不同的操作自动生成相应的sql语句,从而实现了程序员对po对象的操作转化为对数据库关系表的操作.

二、使用步骤

1.编写hibernate配置文件

hibernate配置文件有两种,分别是hibernate.cfg.xml文件和hibernate.properties,推荐使用 hibernate.cfg.xml.

2.po和映射文件

使用middlegen和hibernate-extensions从数据库导出po的映射文件,并在 hibernate.cfg.xml当中声明.

3.编写dao

对每一张关系表编写一个dao,提供一组增、删、改、查方法供业务逻辑对数据库操作使用.

更多的细节请大家参阅hibernate的网站获取详细的信息.并在各自的实践和开发中加深体会.

标签: Ibatis和Hibernate的区别

添加新评论