zoukankan      html  css  js  c++  java
  • Hibernate知识点总结

        Hibernate的学习在整个SSH的学习过程中算是持续时间最长的,由于里面涉及到的东西比較多一些,这篇博文就简介一下小编自己对Hibernate的初步总结。

        

        一、导图展示

                                                                                                           

        

        二、导图分析

        

        Hibernate定义:Hibernate是一个开放源码的对象关系映射框架,它对JDBC进行了很轻量级的对象封装,使得Java程序猿能够随心所欲的使用对象编程思维来操纵数据库。

        小编理解的Hibernate大体上分为三个部分:一是关于xml部分的配置,二是Hibernate相关的api,最后一个是详细的增删改查操作。


        1.关于xml的配置


        hibernate中涉及的xml主要有两部分:


        ①描写叙述类与表中的关系映射配置文件   xxx.hbm.xml

        主要描写叙述了实体类与数据库中表中的映射关系,我把里面的关系主要分为两部分。一部分是关于类级别的,主要描写叙述的是自身的属性和数据表中字段的相应关系;还有一部分是对级联关系的描写叙述,比方一对一、一对多、多对对等实体与实体之间联系的描写叙述,配置好之后,数据库会依据配置的级联关系生成相应的外键约束。


        ②描写叙述连接数据库的配置文件         hibernate.cfg.xml

        这一部分主要记录了连接数据库的必要信息,比方数据库驱动、数据库名称、username和password,以及Hibernate訪问不同数据库须要的方言配置,另一部分就是对xxx.hbm.xml文件的引入。

    它是hibernate的核心配置文件。

         

        2.Hibernate API

      

        应用程序能够直接通过Hibernate API訪问数据库。Hibernate API中的接口可分为下面几类。

        ①提供訪问数据库的操作(如保存、更新、删除和查询对象)的接口。这些接口包含:Session、Transaction和Query接口。

        ②用于配置Hibernate的接口:Configuration,配置Hibernate,启动Hibernate,创建SessionFactory对象;

          初始化Hibernate的接口:SessionFactory,初始化Hibernate,当数据存储源的代理,创建Session对象。

        ③回调接口,使应用程序接受Hibernate内部发生的事件,并作出对应的回应。这些接口包含:Interceptor、Lifecycle和Validatable接口。

        ④用于扩展Hibernate的功能的接口,如UserType、CompositeUserType和IdentifierGenerator接口。假设须要的话,应用程序能够扩展这些接口。

        Hibernate内部封装了JDBC、JTA(JavaTransaction API)和JNDI(Java Naming and Directory Interface)。JDBC提供底层的数据訪问操作,仅仅要用户提供了对应的JDBC驱动程序,Hibernate可以訪问不论什么一个数据库系统。

    JNDI和JTA使Hibernate可以和J2EE应用server集成。

        

        3.对象操作


        Hibernate实现对象的增删改查操作依赖于Hibernate API函数,从而操作数据库实现。

    这块我也分成了两部分,一部分是对类自身的的增删改查操作,还有一部分是和其它类相关联的增删该查操作。可是使用Hibernate提供的封装完毕对对象的操作,性能较低,能够通过在类与表中的关系映射配置文件里改动參数的方式,提高Hibernate的操作性能。   

        

        以上就是自己对Hibenate初步的学习总结,欢迎交流学习。  


  • 相关阅读:
    为富人服务,挣富人的钱 Leone
    javascript 高效数组随机顺序 Leone
    Atitit 开发2d游戏的技术选型attilax总结
    Atitit 软件项目非法模块与功能的管理与  监狱管理的对比 原理与概论attilax总结
    qqzoneQQ空间漏洞扫描器的设计attilax总结
    Atitit机器学习原理与概论book attilax总结
    Atiti  qq空间破解(3)gui图形化通用cli执行器atiuse
    Atitit.attilax重要案例 项目与解决方案与成果 v6 qa15
    Atitit dsl对于数组的处理以及main函数的参数赋值
    Atitit 类库冲突解决方案  httpclient4.5.2.jar
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/5244225.html
Copyright © 2011-2022 走看看