Hibernate 简介


Hibernate 简介

定义:Hibernate 是一种java语言下的对象关系映射解决方案。它是一种自由、 开源的文件。它用来把对象模型表示的对象映射到基于SQL的关系模型结构中去,为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的框架;



Hibernate 核心接口简介

Confiruration 接口:
    该接口是Hibernate  的入口,负责Hibernate初始化时加载默认文件路径下的配置文件信息(hibernate.properties 或 Hibernate.cfg.xml )到计算机内存,并通过它的对象加载指定的映射文件到内存,最后创建一个sessionFactory 对象,把它的配置信息copy到sessionFactory对象的缓存中;

SessionFactory :
   SessionFactory 负责创建Session实例,SessionFactory 负责创Session实例,每一个SessionFactory实例对应一个数据库。SessionFactory是一个重量级的(这是对占用内存大小而言),因为它占用很在的内存,用来存放预定义的SQL语句和映射元素据等,所以每一个数据库只创建一个SessionFactory实例,在初始化时完成。它是一个线程安全的,可以被应用的多个线程共享。

Session :
     Session是Hibernate持久化操作的基础,它负责管理与持久化相关的操作,例如数据库的存取、事务的管理和对象的生命周期等。Session与SessionFactory恰恰相反,它不是线程安全的,应该避免多个线程共享同一个Session。Session是轻量级,创建和销毁不会浪费太多的资源,可以为每一个请求分配不公一个Session,在每一次请求过程中及时创建和销毁Session实例,减少资源浪费。


Transaction :
    TranSaction负责Hibernate的数据库事务。其实Hibernate本身并不具备事务管理的能力,只是对底层事务接口进行了封装,这样做有利于在不同的环境中移植。

Query 和Criteria接口:
   Query 和Criteria接口负责Hibernate的查询操作。Query 接口实例封装了一个HQL查询语句,HQL语句与SQL语句相似,只是HQL语句是面向对象的,它操作的是持久化类和该类的属性名,而SQL语句是操作数据库表和字段。Criteria 实例完全封装了字符串形式的查询语句,它比Query实例要面向对象,它适合于执行动态查询。


线程 进程 程序介绍
线程是进程的一部分,进程是程序的一部分。 进程的作用和定义:进程是为了提高CPU的执行效率,减少因为程序等待带来的CPU空转以及其他计算机软硬件资源的浪费而提出来的。进程是为了完成用户任务所需要的程序的一次执行过程和为其分配资源的一个基本单位,是一个具有独立功能的程序段对某个数据集的一次执行活动。线程和进程的区别:

    1、线程是进程的一部分,所以线程有的时候被称为是轻权进程或者轻量级进 程。
   
    2、一个没有线程的进程是可以被看作单线程的,如果一个进程内拥有多个进程,进程的执行过程不是一条线(线程)的,而是多条线(线程)共同完成的。
 
    3、系统在运行的时候会为每个进程分配不同的内存区域,但是不会为线程分配内存(线程所使用的资源是它所属的进程的资源),线程组只能共享资源。那就是说,出了CPU之外(线程在运行的时候要占用CPU资源),计算机内部的软硬件资源的分配与线程无关,线程只能共享它所属进程的资源

     进程与程序的区别:
程序是一组指令的集合,它是静态的实体,没有执行的含义。而进程是一个动态的实体,有自己的生命周期。一般说来,一个进程肯定与一个程序相对应,并且只有一个,但是一个程序可以有多个进程,或者一个进程都没有。除此之外,进程还有并发性和交往性。简单地说,进程是程序的一部分,程序运行的时候会产生进程。

你可能感兴趣的:(Hibernate,线程,领域模型)