Hibernate not only takes care of the mapping from Java classes to database tables (and from Java data types to SQL data types), but also provides data query and retrieval facilities. It can significantly reduce development time otherwise spent with manual data handling in SQL and JDBC. Hibernate’s design goal is to relieve the developer from 95% of common data persistence-related programming tasks by eliminating the need for manual, hand-crafted data processing using SQL and JDBC. However, unlike many other persistence solutions, Hibernate does not hide the power of SQL from you and guarantees that your investment in relational technology and knowledge is as valid as always. **Hibernate 教程** Hibernate 是一个流行的开源Java框架,它主要负责将Java类映射到数据库表,并将Java数据类型转换为SQL数据类型。通过提供数据查询和检索设施,Hibernate 大大减少了开发者在手动处理SQL和JDBC时所需的时间。它的设计目标是通过消除对SQL和JDBC的手动数据处理需求,减轻开发者的负担,估计可以解决95%以上的常见数据持久化编程任务。同时,Hibernate 并没有完全隐藏SQL的强大功能,它确保你在关系技术上的投资和知识依然有效。 **教程部分** 1. **第一个 Hibernate 应用程序** - **设置**:安装Hibernate库,配置Java环境,并设置数据库连接。 - **第一个 class**:创建一个简单的Java实体类,表示数据库中的表。 - **映射文件**:编写XML或注解形式的映射文件,定义实体类和数据库表之间的映射关系。 - **Hibernate 配置**:设置hibernate.cfg.xml或使用Java配置来定义数据库连接和其它参数。 - **用 Maven 构建**:使用Maven构建工具集成Hibernate依赖。 - **启动和辅助类**:创建一个主类或启动器,用于初始化SessionFactory并进行数据库操作。 - **加载并存储对象**:使用Session接口的方法来加载、保存、更新和删除对象。 2. **关联映射** - **映射 Person 类**:为具有关联的类创建映射,如Person类可能有地址或朋友等关联。 - **单向 Set-based 的关联**:定义一个实体类到另一实体类的一对多关系。 - **使关联工作**:配置关联规则,如inverse属性,确保关联的正确维护。 - **值类型的集合**:处理基本类型或自定义值类型集合的映射。 - **双向关联**:建立两个实体间的双向关联,确保两个方向的导航属性都能正常工作。 - **使双向连起来**:调整关联的配置,确保双方都能正确地获取和更新关联的对象。 3. **EventManager web 应用程序** - **编写基本的 servlet**:创建处理HTTP请求的Servlet,用于处理用户交互。 - **处理与渲染**:实现业务逻辑,用Hibernate处理数据库操作,并将结果呈现给用户。 - **部署与测试**:将应用打包成WAR文件,部署到Web服务器并进行功能测试。 **体系结构** - **概述**:讨论Hibernate的基本架构,包括最小化和全面架构,以及基本APIs。 - **JMX 整合**:解释如何将Hibernate服务注册到Java Management Extensions (JMX) 以便监控和管理。 - **上下文相关的会话**:讨论在不同上下文中如何创建和管理Session。 **配置** - **可编程的配置方式**:使用代码动态配置Hibernate。 - **获得 SessionFactory**:创建SessionFactory实例,它是所有数据库操作的起点。 - **JDBC 连接**:配置数据库连接参数,如URL、用户名、密码等。 - **可选的配置属性**:涵盖了各种配置选项,如SQL方言、外连接抓取、二级缓存等。 - **日志**:设置日志系统,如Log4j,以记录Hibernate的操作信息。 **持久化类** - **POJO 例子**:创建无特定约束的Java类,使其符合持久化标准。 - **实现继承**:处理类继承关系在ORM中的映射。 - **equals() 和 hashCode()**:实现这些方法以确保对象的正确比较和哈希表操作。 - **动态模型**:使用动态模式处理不固定列数的表。 - **元组片断映射**:通过自定义实现提高性能和灵活性。 **对象/关系数据库映射基础** - **映射定义**:详述各种映射元素,如Entity、Identifier、Property、Inheritance等。 - **Hibernate 的类型**:理解Hibernate支持的内置类型,以及如何处理自定义类型。 **总结** 本教程提供了学习Hibernate的基础,从安装和配置到编写持久化类,再到复杂的关联映射和查询操作,逐步深入到ORM的核心概念。通过学习,开发者能够熟练运用Hibernate来简化数据库应用的开发过程。
剩余276页未读,继续阅读
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助