A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

【郑州校区】三大框架课堂笔记之Hibernate-day04

Hibernate是什么,它有什么作用?
Hibernate它是一个轻量级的jdbc封装,也就是说,我们可以使用hibernate来完成原来我们使用jdbc完成操作,就是与数据库的交互操作。它是在dao层去使用的。
对象关系映射(英语:Object Relation Mapping,简称ORM,或O/RM,或O/R mapping)
简单说,我们使用orm可以将我们的对象与我们的类去进行映射,使的我们可以去操作对象就完成对表的操作。
Hibernate学习重点
掌握hibernate的基本配置-------搭建hibenate开发环境
掌握hibernate常用API---------如何使用hibedrnate框架进行开
掌握hibernate的关联映射--------解决表与表之间存在关系问题 1:n  1:1  m:n
掌握hibernate的检索方式-------就是掌握hibernate的查询
掌握hibernate的优化方式------提高hibernate效率
Hibernate快速入门下载hibernate

documentation目录:存放hibernate的相关文件与API
lib目录:存放hibernate编译和运行所依赖的jar包,其中required子目录下包含了运行hibernate项目必须的jar包
project目录:存放hibernate各种相关的源代码与资源.
在lib/required目录中,包含的jar包
创建数据库与表
[AppleScript] 纯文本查看 复制代码
CREATE DATABASE hibernateTest;

USER hibernateTest;

CREATE TABLE t_customer(
        id INT PRIMARY KEY AUTO_INCREMENT,
        NAME VARCHAR(20),
        address VARCHAR(50)
)

创建实体类
导入hibernate框架相关依赖jar包
导入lib/required下所有的jar
导入数据库的驱动jar包
日志相关jar包
将hibernate/project/etc/log4j.properties文件导入到工程src下.
Hibernate的相关配置文件
有两种:
        1.xxx.hbm.xml 它主要是用于描述类与数据库中的表的映射关系.
        2.hibernate.cfg.xml 它是hibernate框架核心配置文件。
        
映射配置文件
        位置:它要与实体类在同一个包下.
        名称 :类名.hbm.xml
        约束:
                <!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
可以在hibernate的核心的jar包下的org.hibernate包下查找到
核心配置文件
它主要是hibernate框架所使用的,它主要包含了连接数据库相关信息,hibernate相关配置等。
位置:在src下创建一个hibernate.cfg.xml
约束:
约束文件所在位置:hiberante核心jar包下的org.hibernate包下        
在这个文件中如何配置?
可以参考 hibernate-release-5.0.7.Final\project\etc\hibernate.properties文件
Hibernate快速 入门开发测试
Hibernate执行原理总结
hibernate工作原理:
1、通过Configuration().configure();读取并解析hibernate.cfg.xml配置文件
2、由hibernate.cfg.xml中的<mappingresource="com/xx/User.hbm.xml"/>读取解析映射信息。
3、通过config.buildSessionFactory();//得到sessionFactory。
4、sessionFactory.openSession();//得到session。
5、session.beginTransaction();//开启事务。
6、persistent operate;
7、session.getTransaction().commit();//提交事务
8、关闭session;
9、关闭sessionFactory;
Hibernate的配置详解
Hibernate中我们使用时主要有两种配置文件
核心配置文件  hibernate.cfg.xml
对于hibernate的核心配置文件它有两种方式:
1. hibernate.cfg.xml
2. hibernate.properties
我们在开发中使用比较多的是hibernate.cfg.xml这种方式,原因它的配置能力更强,易于修改
我们主要讲解的是hibernate.cfg.xml配置
1. 可以加载数据库相关信息
2. hibernate相关配置
3. 加载映射配置文件
对于hibernate.cfg.xml配置文件中的内容可以参考hibernate/project/etc/hibernate.properties的配置
配置这个属性后,我们可以进行表的自动创建
Create-drop 每次都会创建一个新的表,执行完成后删除。一般在测试中使用
Create   每次都会创建一个新的表,一般是在测试中使用
update 如果数据库中有表,不创建,没有表创建,如果映射不匹配,会自动更新表结构(只能添加)
validate  只会使用存在的表,并且会对映射关系进行校验.
映射配置文件   xxx.hbm.xml
        映射配置文件它的名称是类名.hbm.xml,它一般放置在实体类所在的包下。
        这个配置文件的主要作用是建立表与类的映射关系。
        
1. 统一声明包名,这样在<class>中就不需要写类的全名.
2. 关于<class>标签配置
name属性:类的全名称
table 表的名称,可以省略,这时表的名称就与类名一致
catalog属性:数据库名称 可以省略.如果省略,参考核心配置文件中url路径中的库名称
3. 关于<id>标签
首先它必须存在。<id>是用于建立类中的属性与表中的主键映射。
name 类中的属性名称
column 表中的主键名称  column它也可以省略,这时列名就与类中属性名称一致
length 字段长度
type属性 指定类型
<generator>它主要是描述主键生成策略.
4. 关于<property>标签
它是描述类中属性与表中非主键的映射关系
关于hibernate的映射文件中类型问题
对于type属性它的取值,可以有三种:
1. java中的数据类型
2. hibernate中的数据类型
3. SQL的数据类型
默认是hibernate中数据类型


【郑州校区】Hibernate入门------HelloWord
【郑州校区】三大框架笔记之Struts2-day03
传智播客·黑马程序员郑州校区地址
河南省郑州市 高新区长椿路11号大学科技园(西区)东门8号楼三层
联系电话 0371-56061160/61/62
来校路线  地铁一号线梧桐街站A口出

5 个回复

倒序浏览
继续更新啊
回复 使用道具 举报
三大框架 三大框架 三大框架
回复 使用道具 举报
回复 使用道具 举报
回复 使用道具 举报
{:8_507:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马