- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学习韩顺平之hibernate笔记
第一讲:
Hibernate是什么?
它是一个框架
是一个orm框架(其它的apache ojb,ibatis,toplink)
Orm(object relation mapping)对象关系映射框架
O object--业务层
R relation--关系数据库
M mapping--对象关系映射文件
处于我们项目的持久层位置
对JDBC的轻量级封装
Hibernate的原理:
相当于是一个翻译,业务逻辑层持久层--数据库,所以业务逻辑层就不用关心用的是什么数据库,而直接和持久层打交道,持久层将从业务逻辑层得到的语句(并进行一系列优化)翻译成数据库的语句,实现一些功能。这样当数据库变更时,我们就不用改动业务逻辑的一些sql语句。
每一层的耦合性减小,业务层和数据库层没有关系,可以达到轻松改变
Hibernate可以用在j2se中
Struts是web框架
为什么有hibernate:
以前我们换数据库需要重写SQL语句,和一些其它的语句,麻烦,
第二讲:
开发时一般先开发DB,在用工具生成mapping和domain
Domain对象的名称 首字母要大写
Pojo (plain ordinary java object) 简单的JAVA对象和一张表对应(应该有一个键属
性,有GET,SET方法,有一个无参的构造函数)
对象关系映射文件:作用是用于指定domain对象和表的映射关系,取名:domain对象。Hbm.xml。一般我们放在和domain对象同一个文件夹下(一个包下)
创建一个sequence
Create sequence emp_seq
Start with 1
Increment by 1
Minvalue 1
Nomaxvalue
Nocycle
Nocache
6、
hibernate-mapping
class name=Employee table=employee
id name=id column=id type=java.lang.Integer
!-- 该元素用于指定主健值生成策略hilo native increment sequence uuid --
generator class=sequence
!-- 指定是哪一个sequence --
param name=sequence
emp_seq
/param
/generator
/id
!-- 定义的属性 --
property name=name type=java.lang.String
column name=name not-null=false/column
/property
property name=email type=java.lang.String
column name=email not-null=false/column
/property
property name=hiredate type=java.util.date
column name=hiredate not-null=false/column
/property
/class
/hibernate-mapping
创建hibernate.cfg.xml并且配置
hibernate-configuration
session-factory
property name=connection.driver_classoracle.jdbc.driver.OracleDriver/property
property name=connection.usernamescott/property
property name=connection.passwordtiger/property
property name=connection.utljdbc:oracle:thin:@localhost:1521:orcl/property
!-- 明确告诉hibernate连接的是哪类数据库 --
property name=dialectorg.hibernate.dialect.OracleDialect/property
!-- 用于加载映射文件 --
mapping resource=com/yxl/domain/Employee.hbm.xml/
/session-factory
/hibernate-configuration
运用hibernate
创建cfg对象,用于读取hibernate.cf
文档评论(0)