首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

Hibernate原理引见及简单实例入门体验

2012-11-08 
Hibernate原理介绍及简单实例入门体验面向对象开发中的问题:模型不匹配(阻抗不匹配)????Java面向对象语言,

Hibernate原理介绍及简单实例入门体验

面向对象开发中的问题:模型不匹配(阻抗不匹配)
????Java面向对象语言,对象模型,其主要概念有:继承、关联、多态等,数据库是关系模型,其主要概念有:表、主键、外键等。

?

?

解决办法

    使用JDBC手工转换。 使用ORM(Object Relation Mapping对象关系映射)框架来解决,主流的ORM框架有Hibernate 、TopLink. OJB 。

JDBC手工转换方法代码示例:


    ?

    hibernate的一个简单的例子:

    一、在Eclipse里新建一个工程,导入上文所说的开发hibernate所需要的jar包。

    ?

    二、写一个简单实体

    User.java

            package?com.mzhj.hibernate; ????import?java.util.Date; ?? ??import?org.hibernate.Session; ?? import?org.hibernate.SessionFactory; ?? import?org.hibernate.cfg.Configuration; ?? ??import?com.mzhj.hibernate.domain.User; ?? ??public?class?Base?{ ?? ????public?static?void?main(String?args[]){ ?? ????????Configuration?cfg=new?Configuration();??//找到hibernate.cfg.xml文件并进行初始化。 ?? ????????SessionFactory?sf=cfg.configure().buildSessionFactory();????//通过初始化对象获得Session工厂。 ?? ????????//Configuration对象必须先调用一下confgiure方法,否则会出现Hibernate?Dialect?must?be?explicitly?set错误。 ?? ????????Session?session=sf.openSession();?//打开一个Session对象。 ?? ????????User?user=new?User();??? ?? ????????user.setBirthday(new?Date()); ?? ????????session.beginTransaction();?//开启事务,否则不能保存成功,除非这个数据库用的引擎是不支持事务的引擎如:MyISAM引擎。 ?? ????????session.save(user); ??????????session.getTransaction().commit();??//提交事务。 ?? ????} ??} ????

热点排行