`
p_3er
  • 浏览: 55188 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

第一章 对象持久化与Hibernate

 
阅读更多

1.1 解耦合
1.1.1 应用层解耦合--应用逻辑(service)和数据逻辑(dao)分离
1.1.2 资源层解耦合--逻辑结构和物理结构分离


1.2 DAO模式
1.2.1 DAO对业务层提供数据抽象层接口
数据存储逻辑分离
数据访问底层实现的分离
资源管理和调度的分离
数据抽象


1.3 ORM Object Relactional Mapper 对象--关系型数据映射组件
ORM(Object Relational Mapping)---是一种为了解决面向对象与关系型数据库存在的互不匹配的现象的技术。简单说:ORM是通过使用描述对象和数据库之间映射的元数据,将Java程序中的对象自动持久化到关系数据中。本质上就是将数据从一种形式转换到另外一种形式。

分层后,上层不需要知道下层是如何做了。
分层后,不可以循环依赖,一般是单向依赖。


1.4 持久化实现类型(理解)
混杂模式:业务代码与sql语句写在一起
Data Class: 数据操作写在一个类中,还是需要大量的sql语句
基于持久化框架:如Hibernate,不需要sql语句,但可以使用sql


1.5 持久化框架介绍
Hibernate
Apache OJB
JDO(是SUN提出的一套标准—Java数据对象)
Toplink(Orocle公司的)
EJB(2.0X中有CMP;3.0X提出了一套“Java持久化API”---JPA)
IBatis(非常的轻量级,对JDBC做了一个非常非常轻量级的包装,严格说不是O/R映射框架,而是基于SQL的映射(提供了一套配置文件,把SQL语句配置到文件中,再配置一个对象进去,只要访问配置文件时,就可得到对象))
JAP(是SUN公司的一套标准),意愿统一天下


1.6 Hibernate做什么:
就是将对象模型(实体类)的东西存入关系模型中,
实体中类对应关系型库中的一个表,
实体类中的一个属性会对应关系型数据库表中的一个列
实体类的一个实例会对应关系型数据库表中的一条记录。
%%将对象数据保存到数据库、将数据库数据读入到对象中%%


1.7 Hibernate存在的原因
解决阻抗不匹配的问题;
目前不存在完整的面向对象的数据库
JDBC操作数据库很繁琐
SQL语句编写并不是面向对象
可以在对象和关系表之间建立关联来简化编程
O/R Mapping简化编程
O/R Mapping跨越数据库平台
hibernate_0200_OR_Mapping_Simulation


1.8 Hibernate的优缺点:
不需要编写的SQL语句(不需要编辑JDBC),只需要操作相应的对象就可以了,就可以能够存储、更新、删除、加载对象,可以提高生产效率;
因为使用Hibernate只需要操作对象就可以了,所以我们的开发更对象化了;
使用Hibernate,移植性好(只要使用Hibernate标准开发,更换数据库时,只需要配置相应的配置文件就可以了,不需要做其它任务的操作);
Hibernate实现了透明持久化:当保存一个对象时,这个对象不需要继承Hibernate中的任何类、实现任何接口,只是个纯粹的单纯对象—称为POJO对象(最纯粹的对象—这个对象没有继承第三方框架的任何类和实现它的任何接口)
Hibernate是一个没有侵入性的框架
Hibernate代码测试方便。


1.9 Hibernate使用范围:
针对某一个对象,简单的将它加载、编辑、修改,且修改只是对单个对象(而不是批量的进行修改),这种情况比较适用;
对象之间有着很清晰的关系(例:多个用户属于一个组(多对一)、一个组有多个用户(一对多));
聚集性操作:批量性添加、修改时,不适合使用Hibernate(O/映射框架都不适合使用);
要求使用数据库中特定的功能时不适合使用,因为Hibernate不使用SQL语句;

分享到:
评论

相关推荐

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

    第2章 Java对象持久化技术概述  2.1 直接通过JDBC API来持久化实体域对象  2.2 ORM简介  2.2.1 对象-关系映射的概念  2.2.2 ORM中间件的基本使用方法  2.2.3 常用的ORM中间件  2.3 实体域对象的其他持久化模式...

    精通Hibernate:Java对象持久化技术详解(第2版)源码1

    《精通Hibernate:Java对象持久化技术详解(第2版)》是一本深入解析Java对象持久化框架Hibernate的专业书籍。源码文件涵盖了多个章节,包括chapter1到chapter10,这表明该书通过实例代码详细讲解了Hibernate的核心...

    精通hibernate:对象持久化技术孙卫琴第二版part2

    第3章 第一个Hibernate应用 47 本章通过简单的helloapp应用例子,演示如何利用Hibernate来持久化Java对象。 3.1 创建Hibernate的配置文件 47 3.2 创建持久化类 48 3.3 创建数据库Schema 51 3.4 创建对象-关系...

    精通Hibernate:对象持久化技术第二版part3

    第3章 第一个Hibernate应用 47 本章通过简单的helloapp应用例子,演示如何利用Hibernate来持久化Java对象。 3.1 创建Hibernate的配置文件 47 3.2 创建持久化类 48 3.3 创建数据库Schema 51 3.4 创建对象-关系...

    hibernate持久化技术详解.孙卫琴.代码2

    1. **缓存(Caching)**: Hibernate提供了两级缓存机制:第一级缓存是会话级别的,所有对象都存储在会话内部;第二级缓存可以是进程级或集群级,使用第三方缓存提供者如Ehcache。 2. **级联操作(Cascading)**: ...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part4

    第2章 Java对象持久化技术概述  2.1 直接通过JDBC API来持久化实体域对象  2.2 ORM简介  2.2.1 对象-关系映射的概念  2.2.2 ORM中间件的基本使用方法  2.2.3 常用的ORM中间件  2.3 实体域对象的其他持久化模式...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part3

    第2章 Java对象持久化技术概述  2.1 直接通过JDBC API来持久化实体域对象  2.2 ORM简介  2.2.1 对象-关系映射的概念  2.2.2 ORM中间件的基本使用方法  2.2.3 常用的ORM中间件  2.3 实体域对象的其他持久化模式...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part1.rar

    第2章 Java对象持久化技术概述  2.1 直接通过JDBC API来持久化实体域对象  2.2 ORM简介  2.2.1 对象-关系映射的概念  2.2.2 ORM中间件的基本使用方法  2.2.3 常用的ORM中间件  2.3 实体域对象的其他持久化模式...

    第10章 Hibernate 3持久化技术实践与性能优化

    在Java Web开发中,Hibernate作为一款强大的对象关系映射(ORM)框架,为开发者提供了便捷的数据持久化解决方案。本章将深入探讨Hibernate 3的持久化技术实践与性能优化策略,帮助开发者提升应用效率和系统性能。 ...

    Hibernate 手册 第一章 Hibernate入门

    《Hibernate 手册 第一章 Hibernate入门》 Hibernate 是一个开放源码的Java持久化框架,它为Java开发者提供了一种对象关系映射工具来管理Java应用中的关系数据。本章将带你逐步走进Hibernate的世界,了解其基本概念...

    精通hibernate源码ch4

    深入理解Hibernate的源码,不仅可以帮助开发者提高开发效率,还能提升对数据库管理与Java对象持久化的理解。本章我们将聚焦于Hibernate源码的第四个章节,主要探讨Java对象如何通过Hibernate实现持久化,以及其背后...

    hibernate映射和查询

    Hibernate 是一个流行的 Java 应用程序开发框架,它提供了一个持久层解决方案,简化了数据库操作。对于初学者来说,理解 Hibernate 的映射和查询机制是至关重要的,因为它们构成了 Hibernate 核心功能的基础。 **一...

    学习hibernate第一章内容

    2. 第一个Hibernate程序:编写实体类,定义映射文件,实现简单的CRUD操作。 3. 主键生成策略:了解Hibernate的几种主键生成策略,如identity、sequence、increment等。 4. 查询操作:使用HQL进行简单和复杂的查询,...

    一套不错的hibernate学习教程

    第一章 ORM 概述 目标: 理解ORM 熟悉Hibernate 的作用 软件分层的优点 Hibernate是一个优秀的持久化框架 什么是持久化? Hiberante应用程序的结构 JDBC与Hibernate的比较 第二章 Hibernate API 目标: Hibernate ...

    精通hibernate源码ch1

    本章我们将围绕“精通Hibernate源码”的主题,对Chapter1中的关键知识点进行深入探讨,特别是Java对象持久化技术。 一、对象持久化概念 对象持久化是指将内存中的对象状态保存到持久化存储介质(如数据库)中,...

    深入浅出Hibernate中文版 part1

    3.4 第一段代码 3.5 代码初解 第4章 Hibernate基础 4.1 Hibernate基础语义 4.2 基础配置 4.3 Hibernate O/R映射 4.4 数据关联 4.5 Hibernate数据检索 4.6 HQL实用技术 4.7 自定义持久化实现 第5章 ...

    精通Hibernate第四章

    《精通Hibernate第四章》主要探讨的是对象-关系映射的基础知识以及在使用Hibernate进行数据库操作时的映射技巧。这一章节深入解析了如何在Java应用程序中有效地管理和持久化数据。 首先,我们回顾一下软件的体系...

Global site tag (gtag.js) - Google Analytics