韩顺平hibernate笔记
### 韩顺平Hibernate笔记知识点详解 #### 一、Hibernate概述 1. **定义**: - Hibernate是一个Java框架,特别地,它是一个ORM(Object-Relational Mapping,对象关系映射)框架。 - ORM框架的主要目的是解决Java对象模型与关系型数据库之间的映射问题,使得开发人员可以专注于业务逻辑的实现而不用过多关注数据访问细节。 2. **位置**: - Hibernate通常被部署在项目的持久层,即负责数据持久化的那一层。 - 持久层是应用程序中负责数据存取的部分,它介于业务逻辑层和数据源之间。 3. **核心概念**: - **ORM**:是一种编程技术,用来将对象的状态映射到关系型数据库中的行和列。在Hibernate中,对象是业务层的一部分,而关系是指数据库表及其之间的关系;映射则由特定的XML文件或者注解来定义。 - **Hibernate与JDBC的关系**:Hibernate是对JDBC的封装,它简化了数据库操作,并提供了面向对象的方式来处理数据库交互。 4. **其他ORM框架**: - Apache OJB、TopLink、iBatis(MyBatis)、EJB CMP等也都是常见的ORM框架,但Hibernate以其易用性和强大的功能在业界得到了广泛的应用。 #### 二、为什么需要Hibernate? 1. **减少代码量**:通过ORM技术,可以大大减少数据库操作相关的代码量。 2. **提高开发效率**:Hibernate自动处理了很多底层细节,例如事务管理和缓存管理,使得开发者可以更快速地构建应用。 3. **易于维护**:由于业务逻辑与数据访问层分离,因此维护起来更加容易。 4. **平台无关性**:Hibernate支持多种数据库,这使得应用可以在不同的数据库平台上运行而无需修改太多代码。 #### 三、Hibernate入门案例 1. **开发流程**: - **创建项目**:首先创建一个新的Java项目。 - **引入依赖**:下载并添加Hibernate及相关库到项目中。 - **设计数据库表**:根据业务需求设计相应的数据库表结构。 - **编写对象关系映射文件**:使用XML或注解形式定义对象与数据库表之间的映射关系。 - **配置Hibernate文件**:设置数据库连接信息以及其他配置项。 - **实现CRUD操作**:创建、读取、更新、删除数据的基本操作。 2. **案例详解**: - **创建雇员表**: ```sql CREATE TABLE employee ( id NUMBER PRIMARY KEY, name VARCHAR2(64) NOT NULL, email VARCHAR2(64) NOT NULL, hiredate DATE NOT NULL ); ``` - **创建序列**: ```sql CREATE SEQUENCE emp_seq START WITH 1 INCREMENT BY 1 MINVALUE 1 NO MAXVALUE NO CYCLE NO CACHE; ``` - **编写对象关系映射文件**: ```xml <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="com.hsp.domain"> <class name="Employee" table="employee"> <id name="id" column="id" type="java.lang.Integer"> <generator class="sequence"> <param name="sequence">emp_seq</param> </generator> </id> <property name="name" type="java.lang.String"> <column name="name" not-null="true"/> </property> <property name="email" type="java.lang.String"> <column name="email" not-null="true"/> </property> <property name="hiredate" type="java.util.Date"> <column name="hiredate" not-null="true"/> </property> </class> </hibernate-mapping> ``` - **配置Hibernate文件**: ```xml <hibernate-configuration> <session-factory> <!-- 数据库连接信息 --> <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property> <property name="connection.url">jdbc:oracle:thin:@localhost:1521:orcl</property> <property name="connection.username">your_username</property> <property name="connection.password">your_password</property> <!-- 显示SQL语句 --> <property name="show_sql">true</property> <!-- 映射文件位置 --> <mapping resource="com/hsp/domain/Employee.hbm.xml"/> </session-factory> </hibernate-configuration> ``` 通过上述步骤,我们能够构建一个简单的Hibernate项目,并实现基本的数据访问操作。这种方式不仅简化了数据库操作,还提高了代码的可读性和可维护性。

















剩余34页未读,继续阅读


- 粉丝: 2w+
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 自动化控制仪表安装工程培训资料.docx
- 网络整合营销(SEM)理论概述.docx
- 计算机高新技术考试练习题一附操作步骤.docx
- 现代电气控制与PLC技术.docx
- 项目管理知识体系.ppt
- 如何用Excel制作施工管理日记.pptx
- 两个n位大整数相乘算法.doc
- 网络毕业设计样本.doc
- 计算机专业英语2008影印版句子词语翻译(小抄版).doc
- 专题-物联网电子商务应用p.ppt
- 学习]算法导论第三次习题.ppt
- 综合布线双机集群方案.pptx
- 软件数据库工程师个人简历.docx
- 软件广告推广策划书.pdf
- 专题讲座资料(2021-2022年)公司信息化建设规划方案草.doc
- 医学成像与通信协议DICOM基本概念.pdf


