ITjob就业培训java教材34.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
### ITjob就业培训Java教材第34章知识点详解 #### 第三十四章:Hibernate基础 **学习目标:** - 理解ORM(Object Relational Mapping)机制。 - 理解Hibernate的工作原理。 - 掌握Hibernate的配置及对象-映射文件的创建方法。 - 理解对象持久化的概念。 ### ORM机制简介 ORM是一种编程技术,用于将对象模型与关系型数据库之间进行转换。在Java开发中,ORM允许开发者以面向对象的方式操作数据库,而无需编写复杂的SQL语句。 ### Hibernate概述 Hibernate是一个开放源代码的ORM框架,用于实现Java应用程序与关系型数据库之间的映射。它内部封装了通过JDBC访问数据库的操作,并向上层应用提供了面向对象的数据访问API。 #### 使用Hibernate的基本步骤: 1. **创建Hibernate的配置文件:** 配置文件中包含与数据库连接相关的信息,通常以XML或Java属性文件的形式存在。 2. **创建持久化类:** 即代表数据库表的Java类。 3. **创建对象-关系映射文件:** 定义Java对象与数据库表之间的映射关系。 4. **编写访问数据库的代码:** 使用Hibernate提供的API进行数据操作。 ### 创建简单的Hibernate应用 本节将通过一个名为`customerApp`的应用程序来演示如何使用Hibernate访问关系数据库。该应用的主要功能包括保存、更新、删除、加载以及查询Customer对象。 #### 创建Hibernate配置文件 1. **配置文件格式:** Hibernate支持两种类型的配置文件: - XML格式 - Java属性文件格式 2. **示例:Java属性文件格式** - 默认文件名为`hibernate.cfg.xml`,位于应用的classpath中。 - Hibernate软件包的`src\net\sf\hibernate`目录下提供了`hibernate-mapping-2.0.dtd`文件,用于定义映射文件的结构。 #### 对象-映射文件详解 - **DTD文件介绍:** DTD(Document Type Definition)文件定义了映射文件的结构和规则。 - **根元素 `<hibernate-mapping>`:** 所有其他元素都必须嵌套在`<hibernate-mapping>`元素之内。 - **子元素`<class>`:** 用于表示Java类与数据库表之间的映射关系。 ### DTD文件中的元素介绍 - **顶层元素 `<hibernate-mapping>`:** - 包含可选的`<meta>`、`<import>`、`<class>`和`<query>`等子元素。 - 这些子元素可以不存在,也可以出现多次。 - **子元素 `<class>`:** - 必须包含一个`<id>`子元素。 - 可以包含多个`<property>`元素,用于映射类中的属性到数据库表中的列。 ### 示例映射文件分析 以下是一个简单的`<class>`元素示例: ```xml <class name="mypack.Customer" table="CUSTOMERS"> <id name="id" column="ID" type="long"> <!-- 主键生成策略等 --> </id> <property name="name" column="NAME" type="string" not-null="true"> <!-- 属性映射信息 --> </property> <property name="email" column="EMAIL" type="string" not-null="true"> <!-- 属性映射信息 --> </property> </class> ``` - **注意元素顺序:** 根据DTD规范,`<id>`子元素必须出现在任何`<property>`元素之前。 - **属性详解:** - `name`:Java类属性名。 - `column`:对应数据库表中的列名。 - `type`:属性类型。 - `not-null`:是否不允许为空。 ### 总结 通过本章的学习,我们了解了Hibernate的基本概念及其在Java应用程序中的应用方式。掌握了如何配置Hibernate、创建对象-关系映射文件以及基本的数据操作流程。这对于理解和掌握ORM技术以及提高Java开发效率具有重要意义。
- 粉丝: 0
- 资源: 9万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助