### Hibernate学习笔记知识点详解 #### 一、在Eclipse中配置Hibernate环境 ##### 1. 配置Classpath Variables 为了在Eclipse中正确配置Hibernate,首先需要设置Classpath Variables来指向Hibernate安装路径下的核心库文件。具体步骤如下: 1. 打开Eclipse并选择`Window -> Preferences`打开首选项对话框。 2. 在左侧菜单中选择`Java -> Build Path -> Classpath Variables`。 3. 点击右侧的`New`按钮创建新的Classpath Variable。 4. 输入`Name`为`hibernate3.2`,`Path`处点击`File`按钮,选择`hibernate3.jar`所在的路径,即`${HIBERNATE-INSTALL}/hibernate3.jar`。 ##### 2. 配置User Libraries 接着,需要配置Eclipse中的User Libraries来包含Hibernate及其依赖库。这些依赖库包括但不限于dom4j、log4j、cglib、commons、c3p0、ehcache、jta、asm 和 ant等。具体步骤如下: 1. 继续在首选项对话框中选择`Java -> Build Path -> User Libraries`。 2. 点击右侧的`New`按钮创建新的User Library,并命名为`hibernate`。 3. 创建后,在列表中选择`hibernate`,然后点击`Add Jars`按钮。 4. 选择`hibernate`所在目录下的依赖库文件,例如 `${HIBERNATE-INSTALL}/lib/xxxxx.jar`。 ##### 3. 配置Hibernate映射和配置的XML目录 为了确保Hibernate能够识别和读取映射文件,还需要配置XML Catalog来指向Hibernate的DTD文件。这一步骤对于解析Hibernate配置文件非常重要。 1. 依然在首选项对话框中选择`Web and XML -> XML Catalog`。 2. 点击右上角的`Add`按钮添加新的条目。 3. 对于`hibernate-mapping-3.0.dtd`,输入以下信息: - `URI`: `${HIBERNATE-INSTALL}/src/org/hibernate/hibernate-mapping-3.0.dtd` - `KeyType`: `SystemID` - `Key`: `http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd` 4. 对于`hibernate-configuration-3.0.dtd`,输入以下信息: - `URI`: `${HIBERNATE-INSTALL}/src/org/hibernate/hibernate-configuration-3.0.dtd` - `KeyType`: `SystemID` - `Key`: `http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd` #### 二、ORM (Object Relational Mapping) 概念 ORM(对象关系映射)是一种编程技术,用于将关系型数据库中的数据与面向对象语言中的对象关联起来。这种技术的主要目的是简化数据库访问逻辑,使得开发者可以直接用面向对象的方式来处理数据而无需关心底层的SQL语法。 常见的ORM框架包括: - **Hibernate**:一个流行的Java ORM框架,它能够自动生成所需的SQL语句,从而简化数据库操作。 - **JPA (Java Persistence API)**:这是一个官方定义的ORM标准,被广泛应用于企业级应用中。 - **EJB (Enterprise JavaBeans)**:虽然最初设计时并非专门针对ORM,但其第三版(EJB 3.0)引入了对ORM的支持。 - **Apache OJB**:Apache基金会维护的一个ORM框架。 - **iBatis (MyBatis)**:轻量级的ORM框架,提供了SQL查询的灵活性。 - **直接使用 JDBC**:这种方式需要手动编写SQL语句来与数据库交互。 #### 三、Hibernate 数据持久化 持久化是指将对象的状态保存到某种持久性存储介质中(通常是数据库),以便可以在后续的应用程序运行中恢复这些对象的状态。在Java中,常见的持久化方式包括: - **JDBC**:通过Java Database Connectivity API手动执行SQL语句来进行数据的增删改查操作。 - **Hibernate**:提供了一种自动化的持久化机制,能够根据配置文件自动生成所需的SQL语句,大大减少了开发者的编码工作量。 - **EJB**:主要适用于分布式环境中对象的持久化,通常用于构建大型企业级应用。 Hibernate作为一个ORM框架,其实现了对象关系映射,允许开发者使用简单的POJO (Plain Old Java Object) 类来进行数据库操作。Hibernate的核心特性之一就是它能够根据XML配置文件自动完成对象与数据库表之间的映射,并支持基本的CRUD (Create, Read, Update, Delete) 操作。Hibernate的底层仍然基于JDBC,但它通过抽象层隐藏了具体的JDBC细节,使得开发者可以更加专注于业务逻辑而非数据库操作。 #### 四、Hibernate配置文件 Hibernate的核心配置文件是`hibernate.cfg.xml`,该文件用于指定Hibernate运行时需要的基本配置信息,如数据库连接信息、日志级别等。一个典型的`hibernate.cfg.xml`文件示例如下: ```xml <?xml version="1.0" encoding="gbk"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="show_sql">true</property> <!-- 显示SQL语句 --> <property name="format_sql">true</property> <!-- 格式化显示的SQL语句 --> ... <!-- 其他配置信息 --> </session-factory> </hibernate-configuration> ``` 在这个例子中,`show_sql`和`format_sql`属性分别控制是否显示生成的SQL语句和如何格式化这些语句。这些配置项有助于调试和理解Hibernate是如何与数据库交互的。 #### 总结 本文详细介绍了在Eclipse中配置Hibernate的基本步骤,涵盖了Classpath Variables、User Libraries以及XML Catalog的配置方法;同时阐述了ORM的概念及常见实现方式,并重点分析了Hibernate的数据持久化机制及其核心配置文件`hibernate.cfg.xml`的写法。通过本文的学习,开发者可以更好地理解Hibernate的工作原理,掌握使用Hibernate进行数据库操作的基本技能。
- 粉丝: 197
- 资源: 5
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助