zoukankan      html  css  js  c++  java
  • Hibernate概述

    1 理解ORM基本原理

     ORM(Object Relational Mapping)对象关系映射,它的作用是在关系数据库和对象之间做一个自动映射,将数据库中的数据表映射成为对象,也就是持久化类,对关系型数据库以对象的形式进行操作,减少应用程序开发过程中数据持久化的编程任务。可以把ORM理解为关系型数据和对象的一个纽带,开发时只需关注纽带的一端的映射对象即可。

                                   ORM原理图

    Hibernate是众多ORM工具中比较优秀的框架,相对于IBATIS,它是全自动的关系/对象的解决方案。Hibernate通过持久化类*.java、映射文件*.hbm.xml和配置文件*.cfg.xml操作关系型数据库,使得开发人员不必纠结于复杂的SQL语句。

    2 Hibernate简介

    Hibernate体系概要图:

    Hibernate是通过数据库和配置信息进行数据持久化服务和持久化对象的。Hibernate封装了数据库访问的细节,通过配置的属性文件这个纽带连接关系型数据库和程序中的实体类。

    Hibernate中有三个重要的类:配置类Configuration、会话工厂类SessionFactory、会话类Session

    配置类Configuration:

      配置类主要负责管理Hibernate的配置信息以及启动Hibernate,在Hibernate运行时配置类会读取一些底层实现的基本信息,包括数据库URL、数据库用户名、数据库用户密码、数据库驱动类和数据库适配器(dialect).

    会话工厂类SessionFactory:

      会话工厂类是生成Session的工厂,它保存了当前数据库中所有的映射关系(.hbm.xml),可能只有一个可选的二级数据缓存,并且他是线程安全的。但是会话工厂类是一个重量级对象,它的初始化创建过程会耗费大量资源。

    会话类Session:

      它负责Hibernate所有的持久化操作,通过它开发人员可以实现数据库基本的增删改查操作。但是会话类并不是线程安全的,不要多个线程共享一个Session。

  • 相关阅读:
    vue.js中英文api
    easyui combobox重复渲染问题
    大数据新兴思维
    机器学习技法 之 矩阵分解(Matrix Factorization)
    机器学习技法 之 终章(Final)
    CMake 中文简易手册
    线性判别分析(Linear Discriminat Analysis)
    梯度提升机(Gradient Boosting Machine)之 XGBoost
    机器学习技法 之 梯度提升决策树(Gradient Boosted Decision Tree)
    Host是什么?如何设置host文件?
  • 原文地址:https://www.cnblogs.com/zwbg/p/5955747.html
Copyright © 2011-2022 走看看