Hibernate

2017-05-22  本文已影响0人  shallwego_

一、Hibernate基础知识

1.【ORM---对象/关系映射】

ORM(Object/Relationship Mapping)

利用面向对象思想编写的数据库应用程序最终都是把对象信息保存在关系型数据库中,但编写很多和底层数据库相关的sql语句与面向对象思想格格不入。

2.【主流的ORM框架技术】

3、Hibernate

对JDBC进行了非常轻量级的对象封装。


创建Hibernate实例步骤:

1.创建工程,导入相关jar包。

Preferences---Java---Build Path---User Libraries---添加自定义类库



右键工程---Preferences---Java---Build Path---Libraries---Add Library---User Library---选择刚创建的自定义类库。

可设置以下路径的dtd文档支持xml的自动提示功能


创建Hibernate的配置文件hibernate.cfg.xml。以下五个标签是hibernate.cfg.xml文件基本的属性标签,包括数据库的用户名、密码、驱动、地址、数据库方言。
2.创建持久化类【即Java Bean】
3.创建对象-关系映射文件

右键src---new---other---Hibernate---Hibernate XML Mapping file(hbm.xml),创建对象-关系映射文件hibernate.cfg.xml。


同时,在hibernate.cfg.xml文件中声明mapping标签。


4通过Hibernate API编写访问数据库的代码

二、Hibernate进阶

1.hibernate.cfg.xml常用配置

2.session

Session可以理解为操作数据库的对象。不建议直接使用jdbc的connection操作数据库,而是通过使用session操作数据库。
session与connection是多对一的关系,每个session都有一个与之对应的connection,一个connection不同时刻可以供多个session使用。
把对象保存在关系数据库中需要调用session的各种方法,如:save(),update(),delete(),createQuery()等。

3.Transaction事务

4.session详解

获得session对象有两种方法:


openSession与getCurrentSession的区别:
(1)getCurrentSession在事物提交或者回滚之后会自动关闭,而openSession需要手动关闭。如果使用openSession而没有手动关闭,多次之后会导致连接池溢出。
(2)openSession每次创建新的session对象,getCurrentSession使用现有的session对象。

5.hbm配置文件常用设置




三、Hibernate单表操作

1、单一主键

以mysql为例,常见有两种主键生成策略:

上一篇 下一篇

猜你喜欢

热点阅读