网站大量收购闲置独家精品文档,联系QQ:2885784924

Hibernate笔记说明.doc

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Hibernate笔记说明

day1 一. hibernate数据持久化组件 对象持久化(Object Persistence):把数据保存在永久存储介质中(数据库) 1.为什么要持久化: a.内存是暂时存储设备,断电后数据易丢失 b.网络传输无法传输内存中的对象,需要将对象外化 c.内存中数据查询,组织不方便 d.内存只能存储少量数据 2.怎样持久化 a.对象序列化 -- 二进制流 合并存储,粒度大,无规律 不支持检索 只适合少数个别对象的序列化 b.用JDBC/EJB/ORM 将数据存入数据库 用JDBC:(Java DB Connection) 优点:底层开发,控制力强(细); 效率最高; 标准的(SQL)JDBC,有可移植性 缺点:过于复杂; 代码量大; 可维护性差(代码重用性低); 用EJB:(Entity Java Bean) 优点:直接自动生成JDBC代码; 持久对象(PO)的状态由服务器管理; 声明式的事务 缺点:功能不全(特殊的组件,不能做继承关系); EJB容器是侵入性容器,失去OO的优点; 调试更复杂 用ORM:(object relation mapping)对象关系映射 优点:自动生成JDBC(代码量下降); 使用(plain oldest java object---pojo),非侵入型; 提供状态管理; 难度下降,不需要容器 缺点:由于开源, 文档少; bug多; 技术支持差 结论: 用java开发--必须将数据持久化--用数据库持久化--须用ORM--需要用Hibernate 二. Hibernate 1.POJO类 plain oldest java object,就是标准的Java Bean。 2.Hibernate Hibernate --一个可以自动的根据xml完成对象关系映射,并持久化到数据库的开源组件。其底层也是由JDBC实现的。hibernate是通过xml文件的配置,对数据库的底层的方言,以及数据库连接所需的信息,以及连接数据库的驱动。 hibernate的系统配置文件 hibernate.cfg.xml --与数据库建立连接(一般放在项目的根目录下) XXXX.hbm.xml--用来建立类与表之间的映射关系(一般将映射类的xml文件和实体类放在一起) 3.Hibernate API Configuragion 读配置文件(默认名:hibernate.cfg.xml) (org.hibernate.cfg.Configuration) 生成SessionFactory:SessionFactory 重量级的对象, 线程安全的 (org.hibernate.SessionFactory),生成Session . Session,相当于JDBC中的Connection (org.hibernate.Session),轻量级的对象,线程不安全(原则上一个线程一个Session,不要放在并发的环境中) 生成Transaction Transaction 管理事务的对象 (org.hibernate.Transaction) Query 查询对象,提供面向对象的查询语言(HQL) 4.使用hibernate编程步骤 1,配置环境,加载hibernate的jar文件,以及连接数据库连接使用的jar文件,并配置CLASSPATH环境变量。 2,写hibernate所需的配置文件,hibernate.cfg.xml ,XXX.hbm.xml 3,写POJO类 4,调用hibernate API。 1)获得Configuration的对象,并调用他的configure()方法来读映射文件和配置文件,使用Configuration对象的buildSessionFactory()方法创建SessionFactory对象 2)使用SessionFactory对象openSession()方法创建Session对象。 3)使用Transaction trans = session.beginTransaction();方法来打开一个事务 4)使用Session的相应方法来操作数据库,将对象信息持久化到数据库。 session.delete();     session.save() session.saveOrUpdate()     session.update()     session.load(); 调用t

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档