Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration
。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五的核心接口分别加以介绍。
Session接口:Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的
。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSesion对象称为用户session。
SessionFactory接口:SessionFactroy接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象
。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。
Configuration接口:Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。
Transaction接口:Transaction接口负责事务相关的操作。它是可选的,可发人员也可以设计编写自己的底层事务处理代码。
Query和Criteria接口:Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。
分享到:
相关推荐
hibernate初学
本教程将基于“Hibernate初学者简单代码”这个主题,深入探讨Hibernate的基本概念、核心功能以及如何在实际项目中应用。 一、Hibernate简介 Hibernate是一个开源的对象关系映射(ORM)框架,它允许开发者用面向对象...
这个“hibernate初学者jar包”显然是针对那些刚接触Java和Hibernate的开发者,帮助他们快速搭建开发环境。 在Java开发中,Hibernate简化了数据库操作,它通过映射Java类到数据库表,使得开发者可以使用面向对象的...
【hibernate初学者适用(资料加实例)】 Hibernate 是一款强大的对象关系映射(ORM)框架,它允许Java开发者在处理数据库时采用面向对象的方式,极大地简化了数据操作。对于初学者而言,掌握 Hibernate 是进入 Java...
**hibernate初学项目** 本项目旨在帮助初学者了解并掌握Hibernate框架的基本用法。Hibernate是一个开源的对象关系映射(ORM)框架,它简化了Java应用与数据库之间的交互,通过将Java对象直接映射到数据库表,消除了...
### Hibernate初学笔记知识点概述 #### 一、Hibernate环境的搭建 - **1.1 引入基础Jar包** - **hibernate3.jar**:这是Hibernate的核心库,可以在Hibernate项目的根目录下找到。 - **Required Jars**:位于`lib/...
对于初学者来说,理解并掌握Hibernate的关键概念和技术是非常重要的,因为这可以极大地提高开发效率,减少与数据库交互的复杂性。 Hibernate 允许开发者用面向对象的方式来操作数据库,它通过映射Java类到数据库表...
关于hibernate的Session,向数据插入时的事务隔离级别,持久化对象的状态,对应关系的映射文件,表与表之间的多种映射关系,以及hibernate的二级缓存的笔记。
Struts和Hibernate是Java...通过学习和实践这个初学者代码,你可以了解到如何在实际项目中集成Struts和Hibernate,理解它们如何协同工作,以及如何处理Web请求和数据库操作。这将对提升你的Java Web开发技能大有裨益。
总的来说,这个练习项目提供了一个基础的示例,帮助初学者理解如何将JSF、Seam和Hibernate这三个强大的技术结合起来,构建一个简单的数据管理应用。通过实践,学习者可以深入理解这些技术的工作原理以及它们在实际...
额,hibernate并不是很难学,但是对于初学者来说,直接看一个成型的代码是很难看懂的。。这个代码很简单,对于初学者来说,一看即会。 过于搭建hibernate,Myeclipse8.5之后的版本,右键你的项目——Myeclipse——...
Java Spring和Hibernate是两个在...这个初学者课程的源代码提供了从零开始学习Spring和Hibernate的良好基础。通过分析和运行这些示例,学习者可以深入理解这两个框架的工作原理,进而提升其在实际开发中的应用能力。
测试环境: windows平台+myeclipse 10.6+jdk1.6.0+Apche Tomcat V7.0+mysql 5.6.24+Struts2.3.4 +Hibernate 4.2 (带数据库sql文件) 通过struts2框架,结合mysql数据库构建一个学生报到管理系统,来模拟学生报到...
SpringMVCHibernate项目Spring MVC + Hibernate 初学者教程技术SpringMVC HibernateJSP 页面应用服务器:Glassfish 数据库:MySQL 内容:共4页注册.jsp 创建新用户帐户确认.jsp 如果帐户刚刚创建,则确认新用户登录....
本章是面向Hibernate初学者的一个入门教程。我们从一个使用驻留内存式(in-memory)数据库的简单命令行应用程序开始, 用易于理解的方式逐步开发。 本章面向Hibernate初学者,但需要Java和SQL知识。它是在Michael ...
本章是面向Hibernate初学者的一个入门教程。我们从一个使用驻留内存式(in-memory)数据库的简单命令行应用程序开始, 用易于理解的方式逐步开发。 本章面向Hibernate初学者,但需要Java和SQL知识。它是在Michael ...
本章是面向Hibernate初学者的一个入门教程。我们从一个使用驻留内存式(in-memory)数据库的简单命令行应用程序开始, 用易于理解的方式逐步开发。 本章面向Hibernate初学者,但需要Java和SQL知识。它是在Michael ...
本章是面向Hibernate初学者的一个入门教程。我们从一个使用驻留内存式(in-memory)数据库的简单命令行应用程序开始, 用易于理解的方式逐步开发。 本章面向Hibernate初学者,但需要Java和SQL知识。它是在Michael ...
【标题】:“汤阳光Hibernate3.6(基础).doc”文档详细介绍了Hibernate 3.6,这是一份适合Hibernate初学者的学习资料,涵盖了丰富的实例代码、图表和注解。 【描述】:文档主要讨论了Java对象持久化,特别是如何在...
总的来说,《CTSP Hibernate培训教程》是一份全面且实用的指南,无论你是Hibernate初学者还是有一定经验的开发者,都能从中受益。通过学习,你将能够熟练运用Hibernate来简化Java应用中的数据库操作,提高开发效率,...