hibernate简介

xiaoxiao2021-02-28  102

什么是hibernate? 冬眠?

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,

它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,

使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 

为什么? 简化对数据库的操作.hibernate提供了不同数据库的统一接口,应用程序开发有了跨数据库的可能. 核心的API configuration sessionfactoty session query transaction 工作原理 hibernate启动-->configuration(xml)-->sessionfactoty-->session -->创建transaction-->持久化操作-->提交transaction-->关闭session 处理流程 请求-->session中查-->sessionfactoty-->DB 怎么使用? 步骤: 导包:hibernate核心包;数据库的驱动包 文件的配置:hibernate.cfg.xml(配置)/xxx.hbm.xml(映射) 调用hibernate的API对数据库进行操作

ID生成规则(重点)

自增类型(mysql和sqlserver)

create table student(id int not null auto_increment,name varchar(30),primary key(id)) insert into student(id,name) values(null,"Tom"); insert into student(name) values("Jack"); 映射文件的<id><generator class="identity">

序列(oracle和db2)

<generator class="sequence"> <param name="sequence">seq_name</param> </generator>

UUID

<generator class="uuid"> create table teacher(id varchar(100) primary key,name varchar(30)) hibernate对象生命周期管理(重点) hibernate对象就是java中的实体对象.管理就是在实体对象的生命周期中被hibernate的操作. 临时状态:内存中有对象,DB中没有数据 持久状态:内存中有对象,DB中有数据,通过操作内存中的对象修改DB中的数据 游离状态:内存中有对象,DB中有数据,对象与数据断开了连接,修改对象不影响DB中的数据 HQL查询 hibernate Query Language 面向对象的查询语言,语法类似SQL,但与数据库无关 SQL:select 字段 from 表 HQL:select 属性 from 类

常用语法:

from 类; 不支持"select*"

select 属性 from 类

where

having

order by

group by

怎么使用?

获取session对象编写HQL语句创建查询对象Query如果存在参数,调用setXXXX()赋值调用Query的list()方法关闭session对象

转载请注明原文地址: https://www.6miu.com/read-29515.html

最新回复(0)