美文网首页
Hibernate学习笔记

Hibernate学习笔记

作者: 疏_桐 | 来源:发表于2017-08-22 16:41 被阅读0次

1.ORM(Object Relation Mapping):对象关系映射-主要解决对象-关系的不匹配

ORM的实现思想:将关系数据库中表中的记录映射成为对象,以对象的形式展示,程序员可以把对数据库的操作转化为对对象的操作。因此ORM的目的是为了方便开发人员以面向对象的思想来实现对数据库的操作。

 ORM一般采用了XML的格式保存对象与关系数据表的映射

2.Hibernate:开源的持久层框架

                      ORM映射工具,建立对象模型和关系数据模型之间的映射

                      对JDBC进行封装,负责java对象的持久化,用于java项目中对主流数据库的访问

3.Hibernate映射文件规范(头文件)在org.hibernate.hibernate-mapping-3.0.dtd文件中

4.Hibernate主配置文件:以xml格式配置hibernate的初始化信息(连接数据库的基本属性、数据库方言、内置常量),这个文件可以在classpath的任意目录下。习惯性命名hibernate.cfg.xml

   该主配置文件的规范在org.hibernate.hibernate-configuration-3.0.dtd文件中

5.相关API

   (1) Configuration:负责读取主配置文件的信息。包括:

    Hibernate运行的底层信息:数据库的URL、用户名、密码、JDBC、驱动类、数据库Dialect,数据库连接池等(对应hibernate.cfg.xml文件)

    持久化类与数据表的映射关系(*.hbm.xml文件)

   (2)SessionFactory接口:Configuration对象根据当前的配置信息生成SessionFactory对象,因此SessionFactory对象中保存了当前的数据库配置信息和所有映射关系以及预定义的SQL语句。同时SessionFactory负责维护Hibernate的二级缓存

           作用:生成Session的工厂      Session session=sf.openSession();

          注意:一般情况下一个应用只初始化一个SessionFactory对象

   (3)session接口:是应用程序与数据库之间交互操作的核心对象,是Hibernate运作的中心,所有持久化对象(javabean)必须在session的管理下才可以进行持久化(更新数据库)操作

            主要方法:取得持久化对象的方法:get() load()

                              持久化对象保存,更新和删除:save(),update(),saveOrUpdate(),delete()

                              开启事务:beginTransaction()

                              管理Session的方法:isOpen(),flush(),clear(),evict(),close()等

  (4)transaction接口:代表依次数据库访问的最小操作,具有数据库事务的概念。所有持久层都应该在事务管理下进行,即使是只读操作

            主要方法:commit():提交相关联的session实例

                              rollback():撤销事务操作

                              wasCommitted():检查事务是否提交

  (5)Query接口:封装数据库查询的返回结果(hql的查询方式)

           常用方法:Iterator():获取查询结果的迭代器对象

                            list():以集合方式获取查询结果

6.CRUD(增删改查步骤)

(1)建立工厂类

public class SessionFactoryUtil {

private static SessionFactory sf;

private SessionFactoryUtil(){

}

public static SessionFactory getSessionFactory(){

if(sf==null){

Configuration config=new Configuration();

config.configure("/hibernate.cfg.xml");

// 可以获取sessionFactory对象,相当于获取DataSource

sf=config.buildSessionFactory();

}

return sf;

}

}

(2)创建SessionFactory实例

 SessionFactory sf = SessionFactoryUtil.getSessionFactory();

(3)获取Session对象

 Session session = sf.openSession();

 (4)用Session对象操作实例类

  例如:  session.save(person);

  (5)提交并关闭Session

      ts.commit();

      session.close();

7.增删改查具体方法


8.Hibernate运行流程


相关文章

  • Hibernate入门

    慕课网Hibernate学习笔记 开发环境 eclipse mars hibernate toos 最简单的例子 ...

  • Hibernate学习笔记

    本节重点:1、hibernate映射文件2、hibernate核心配置文件3、hibernate核心类 1、hib...

  • Hibernate学习笔记

    xml映射类 目的是将对象的属性和数据库的 column 一一对应,

    Hibernate学习笔记

    Hibernate环境搭建: 导入相关jar包; 创建实体类; 编写映射配置文件; 编写核心配置文件; Hiber...

  • Hibernate学习笔记

    1.ORM(Object Relation Mapping):对象关系映射-主要解决对象-关系的不匹配 ORM的实...

  • hibernate学习笔记

    一.hibernate环境的搭建 1.引入jar包 核心包:hibernate3.jarrequired:antl...

  • Hibernate学习笔记

    SessionFactory Session实例工厂,等同于JPA中的EntityManagerFactory,该...

  • Hibernate学习笔记

    Hibernate开发流程 导入Maven依赖(还有数据库驱动) 创建核心配置文件和Mapper的xml文件里配置...

  • Hibernate学习笔记 | Hibernate检索策略

    类级别的检索策略 类级别可选的检索策略包括立即检索和延迟检索,默认为延迟检索 立即检索:立即加载检索方法指定的对象...

  • 【Java中级】5.0 SSH之Hibernate框架(一)——

    1.0 Hibernate框架学习路线 Hibernate入门包括Hibernate的环境搭建、Hibernate...

网友评论

      本文标题:Hibernate学习笔记

      本文链接:https://www.haomeiwen.com/subject/pumkdxtx.html