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

Hibernate是什么 及 软件分层

阅读更多
 Hibernate 是什么?从不同角度的解释:

    1、它是连接 Java 应用程序和关系数据库的中间件。

    2、它对 JDBC API 进行了封装,负责Java对象的持久化。

    3、在分层的软件架构中它位于持久化层,封装了所有数据访问细节,使业务罗基层可以专注于实现业务逻辑。

    4、它是一种 ORM(Object-Relation Mapping 对象-关系映射)工具,能够建立面向对象的域模型和关系模型的映射。

    应用程序分层体系结构:

    1、表述层:提供与用户交互的界面。

    2、业务逻辑层:实现各种业务逻辑。

    3、数据层:负责存放和管理应用的持久性业务。

    软件分层包含两种含义:

    一种是物理分层,即每一层都运行在单独的机器上,这意味着创建分布式的软件系统;

    一种是逻辑分层,指的是在单个软件模块中完成特定的功能。

    软件分层必须符合以下特征:

    1、每个层由一组相关的类或组件构成,共同完成特定的功能。

    2、层与层之间存在自上而下的依赖关系,即上层组件会访问下层组件的 API,而下层组件不应该依赖上层组件。

    3、每个层对上层公开 API,但具体的实现细节对外透明。

    软件分层的优点:

    适当的分层,将会提高软件的以下性能。

    1、伸缩性:指应用程序是否支持更多的用户。例如数据库连接。

    2、可维护性:当发生需求变化,只需修改软件的某一部分,不会影响其他部分的代码。

    3、可扩展性:在现有系统中增加新功能的难易程度。

    4、可重用性:程序代码没有冗余,同一个程序能满足多种需求。

    5、可管理性:管理系统的难易程度。

    缺点:

    1、分层越多对软件设计人员的要求越高。

    2、分层越多调试越困难。

    表通过主建来保证每条记录的唯一性,表的主键应当不具有任何业务含义,因为任何有业务含义的列都有改变的可能性。关系数据库学的最重要的一个理论就是:不要给关键字赋予任何业务意义。

    在域模型中,类之间存在四种关系。

    1、关联:类之间的应用关系。

    如果类A与类B关联,那么被引用的类B将被定义为类A的属性。关联还可以分为单项关联和双向关联。

    2、依赖:类之间的访问关系。

    如果类A访问类B的属性或方法,或者类A负责实例化类B,那么可以说类A依赖类B.

    3、聚集:整体与部分之间的关系。

    4、继承:

分享到:
评论

相关推荐

    Hibernate之struts2整合hibernate以及MVC分层架构的使用案例hibernate002

    本案例主要关注的是如何将Hibernate ORM(对象关系映射)框架与Struts2 MVC(模型-视图-控制器)框架整合,同时探讨MVC分层架构在实际应用中的运用。以下是对这些知识点的详细说明: **1. Hibernate ORM框架** ...

    Hibernate 是什么?从不同角度的解释

    软件分层有物理分层和逻辑分层两种形式。物理分层是指各层分布在不同的硬件设备上,适用于分布式系统;逻辑分层则强调功能的划分,每个层有明确的职责并遵循一定的依赖规则。良好的分层设计可以带来伸缩性、可维护性...

    hibernate实例连oracle

    描述中提到的是一个项目模板,基于Java、Hibernate、JSP和MVC分层架构。这是一个常见的Web应用开发结构,其中: 1. **Java**:作为后端的主要编程语言,用于处理业务逻辑。 2. **Hibernate**:作为ORM框架,负责...

    一套不错的hibernate学习教程

    软件分层的优点 Hibernate是一个优秀的持久化框架 什么是持久化? Hiberante应用程序的结构 JDBC与Hibernate的比较 第二章 Hibernate API 目标: Hibernate API简介 在java应用hibernate步骤 Hibernate 配置文件 ...

    hibernate笔记.txt

    综上所述,《hibernate笔记.txt》虽然部分信息难以直接解读,但从标题和描述中我们仍然能够提炼出关于分层架构设计原则的重要知识点,以及基于Hibernate框架在软件开发中所扮演的关键角色和提供的核心功能。...

    教育移动商务应用软件开发第8章Hibernate简介及功能实现.ppt

    本章旨在让学习者掌握使用Hibernate进行数据持久化的技能,以及理解软件分层架构的重要性。 Hibernate是一个开源的对象关系映射(ORM)框架,它为Java开发者提供了一种将Java对象与关系数据库之间进行无缝映射的...

    hibernate一些文档资料

    #### 二、应用程序的分层体系结构及其在Hibernate中的应用 - **展现层**:负责与用户的交互,通常包括Web页面、客户端应用等。 - **业务逻辑层**:处理具体的业务规则和流程,如订单处理、用户认证等。 - **数据...

    经典hibernate教程_从入门到精通(第一篇,共四篇).ppt

    3. **软件分层的优点** - 伸缩性:分层架构便于添加新功能或调整现有功能,不影响其他层。 - 可维护性:每个层有明确职责,便于定位和修复问题。 - 可扩展性:易于添加新的服务或模块,增强系统功能。 - 可重用...

    汤阳光Hibernate3.6(基础).doc

    综上所述,"汤阳光Hibernate3.6(基础).doc"文档详细讲解了Hibernate 3.6的基础知识,包括对象持久化的概念、分层架构的运用以及Hibernate在数据访问层中的实现方式,是学习Hibernate和O/R Mapping的宝贵资源。...

    Java开源项目Hibernate深度探险

    在面向对象的软件设计中,我们通常会通过UML建模工具,将业务逻辑和数据结构分离。业务逻辑类处理应用程序的核心功能,而数据存储则由专门的bean或module类负责。然而,当涉及到数据库操作时,我们需要编写大量的SQL...

    Struts-Spring-Hibernate概述

    首先,框架是软件开发中的一个重要概念,它提供了一种标准和可重用的结构,使得开发人员可以专注于业务逻辑,而不是重复的基础工作。框架具有高度的可重用性,通过预先定义的接口和交互模式,降低了开发时间和成本。...

    JAVA教学中软件分层架构思维方式的引导.zip

    首先,我们要明白什么是软件分层架构。它通常包括以下几层:表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data Access Layer)以及可能存在的服务层(Service Layer)和持久层...

    Hibernate教程1_从入门到精通

    #### 二、软件分层的优势 - **伸缩性**: 软件系统的各个层次可以根据需求独立地扩展或缩小规模。 - **可维护性**: 每一层都有明确的职责,当某一层次出现故障时,不会影响到其他层的功能,便于维护和更新。 - **可...

    hibernate.doc

    2. 软件分层: - 物理分层:各层分布在不同机器上。 - 逻辑分层:在同一系统中,每层执行特定功能,层间有依赖关系,且每层对外提供API,实现细节对外透明。 3. 持久层: - 为分离数据访问细节和业务逻辑,引入...

    Struts2-hibernate写的登陆注册模块

    Struts2是Apache软件基金会下的一个项目,它继承了Struts1的优点并引入了许多改进。其核心在于Action类,它是业务逻辑的载体。Struts2通过拦截器(Interceptor)机制来处理请求,这些拦截器可以实现如验证、日志记录...

    基于Hibernate和Struts整合的MVC模式设计及应用

    ### 基于Hibernate和Struts整合的MVC模式设计及应用 #### 一、引言 随着软件工程的发展,MVC(Model-View-Controller)设计模式因其良好的分层结构和可维护性而在Web应用开发中得到广泛应用。在当前非常流行的...

    struts2和hibernate整合

    Struts2是Apache软件基金会下的一个项目,它提供了强大的动作调度和视图渲染功能,而Hibernate则是一个对象关系映射(ORM)工具,能够将Java类与数据库表进行映射,简化数据库操作。 **Struts2整合Hibernate的核心...

Global site tag (gtag.js) - Google Analytics