美文网首页
Java web学习—Hibernate框架

Java web学习—Hibernate框架

作者: 当时年少_青衣 | 来源:发表于2017-08-01 20:20 被阅读0次

             ORM原理:对象到关系的映射,在关系数据库和对象之间做一个自动映射,将数据表映射成为对象(持久化类)。

              Hibernate是一个全自动的关系/对象的解决方案通过持久化类(*.java),映射文件(*.hbm.xml)和配置文件(*.cfg.xml)惭怍关系数据库.有三个类:配置类(configuration),会化工厂类(SessionFactory),会话类(Session)

    配置类(Configuration):管理hibernate的配置信息和启动Hibernate

    会话工厂类(SessionFactory):生成Session的工厂,保存了数据库中所有的映射关系,是线程安全的初始化创建过程会消耗大量的系统资源

    会话类(Session):进行增,删,查,改的操作,不是线程安全,避免多个线程共享一个Session

    Hibernate配置文件

    hibernate持久化类编程规则:

    1.实现一个默认构造函数,以便通过Constructor.newInstance()实例化持久化类

    2.提供一个标识属性(可选):一般映射数据库表中的主键字段

    3.使用非final类(可选):                                4.为属性声明访问器(可选):以private 声明

    Hibernate映射

    DOCTYPE元素:用来获取DTD文件

    hibernate-mapping元素:根元素

    class元素:指定持久化类和映射的数据库表名:name是持久化类的全限定类名,table属性是映射数据库表名,包含了一个<id>元素(唯一标识和数据库的主键字段的映射)和多个<property>元素(其他属性和数据表中非主键字段的映射),

    Hibernate实例状态:瞬时状态(transient),持久化状态(persistent),托管状态(detached)

    瞬时状态:实体对象通过new关键字开辟内存创建Java对象,单数没有在hiberante Session 管理中,如果没有变量引用会被jvm回收,瞬时对象的对象在内存中是独立的与数据库中数据无关

    持久化状态:瞬时状态被对象引用会变为持久化状态,存在于数据关联,只有事务结束后才会更新数据库

    托管状态:持久化状态的session关闭后变为托管状态,存在与数据关联,不在session管理中


    很抱歉,暂停学习准备着手去做一个小项目来练下之前学到的东西

    相关文章

      网友评论

          本文标题:Java web学习—Hibernate框架

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