介绍一下手头一个系统的软件结构,先附上图:
大概分为5层:
视图层:
作用:系统和用户进行交互,分离出来,是因为系统修改了界面无需修改业务,甚至于
可以把改写为wap在手机浏览器进行操作。
组成部分:web组件、struts标签等
应用层:
作用:对业务的复杂性进行了封装,视图层的调用者无需知道业务逻辑的具体细节,它仅仅知道使用就可以了,作为系统的协调者,接受数据,对数据进行的操作,操作之后所要到达的视图。
组成部分:控制器、pojp facade(看下方注解)
领域层:
作用:业务逻辑层,在这里实现所有的业务逻辑,以及建模中抽象出来的模型,严格的话可以再用聚合的思路抽象出一些业务逻辑的协调者(比如:转账的时候,调用了减去余额和专家余额2个类,那就可以抽象出一个协调类,负责一起调用这2个类)
组成部分:业务逻辑、模型、业务逻辑协调者(业务 facade)
持久层:
作用:就是把模型、实体等的对象持久化到硬盘
组成部分:hibernate、DAO等
公共基础层:
作用:系统中可以作为基础功能的一些集合
组成:一些可以被大家所公用的而且可以重复利用的组件(如上传下载等)
总结:
这里的“公共基础层”其实不算是一层,它只是一个特殊的包,专门为上层提供一些比如上传下载、邮件收发等共有组件使用的封装。
注解:
POJO FACADE:
引自《POJOs IN ACTION》中的解析,比如:现在汽车是件复杂的机器。它包含
各种机械部件,如:气缸、轮胎等,也许还提供和有足以把飞船送上月球的接受能力,不过对
于用户来说,大部分复杂性都不可见,要开动汽车,我们只需和车钥匙、方向盘、脚刹和变速
档打交道。这些简单的控制装置封装了汽车内部的复杂性。同样,对于业务逻辑的客户表示层
(和控制器)来说,我们也需要隐藏业务逻辑的复杂性。POJO façade在这里其实就是领域模
型的使用者。因为领域模型最好是用POJO方式编码(即不依赖于特定的框架,如Spring、EJB
,这是业务逻辑编码的准则)。
- 大小: 45.2 KB
分享到:
- 2009-08-05 04:49
- 浏览 1884
- 评论(0)
- 论坛回复 / 浏览 (0 / 1811)
- 查看更多
相关推荐
架构设计之分层说明
Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。...简单来说,Spring是一个分层的JavaSE/EE full-stack(一站式) 轻量级开源框架。
架构设计之分层架构.pdf
软件架构设计分层模型和构图思考.docx
《轻量级java ee企业应用实战(第3版)—struts 2+spring 3+hibernate整合开发》 第1章 java ee应用和开发环境 1 1.1 java ee应用概述 2 1.1.1 java ee应用的分层模型 2 1.1.2 java ee应用的组件 3 1.1.3 java ...
在应用系统开发中,采用严格的、单一的、真正的的分层架构是可以的,但实际上我们已经采用了多种架构模式设计系统。当多种不同范式的架构混合在一起,你会不会出现“指鹿为马”的现象呢? 在研究分层架构时,常通过...
.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构.NET分层架构
微软企业级架构设计,分层设计,各层说明,分离关注点
1、平台架构图,分层展示架构图:从访问层、前端UI、web层、业务层、数据存储等层次展示系统架构,设置权限控制与日志记录; 2、提供pdf版本和可线上编辑文件,若需要编辑,可根据readme操作,操作简单 3、压缩包中...
33 - 传统的可扩展架构模式:分层架构和SOA.docx33 - 传统的可扩展架构模式:分层架构和SOA.docx33 - 传统的可扩展架构模式:分层架构和SOA.docx33 - 传统的可扩展架构模式:分层架构和SOA.docx33 - 传统的可扩展...
这是一篇关于ios架构设计的文档,个人觉得还不错,希望对你们有用
资源名称:轻量级Java EE企业应用实战 (第4版)资源目录:第1章 Java EE应用和开发环境 11.1 Java EE应用概述 21.1.1 Java EE应用的分层模型 21.1.2 Java EE应用的组件 31.1.3 Java EE应用的结构和优势 41.1.4...
Spring是一个主流的轻量级的Java Web开发框架,是分层的Java SE/EE full-stack轻量级开源框架
本书不再介绍struts 1.x相关内容,如果读者希望获取《轻量级j2ee企业应用实战》第一版中关于struts 1.x的知识,请登录http://www.crazyit.org下载。当读者阅读此书时如果遇到技术难题,也可登录...
逻辑架构:系统分层 可扩展架构:支持的资源扩展 外部接口架构:系统外部接口支持多种交互协议 可靠性架构:异常处理机制 可维护性架构:运行时的扩展性 集成系统总体架构 集成的时机 逻辑架构集成 物理架构...
系统开发的架构与分层一些知识点,基于Java的一个架构设计!
本书主要讲.NET企业架构设计, 如分层架构、领域架构、领域驱动、领域模型、CQRS、领域事件、事件溯源、基础设施等,非常实用。
设计模式的本质特征是模块独立性和接口简单,因为MVC系统架构难于理解,故采用分层模型对系统进行设计,系统的特点是专门设计了一层数据库的屏蔽层,用来屏蔽数据库的差异性。
不同于其它的架构方法,领域驱动设计DDD(DomainDrivenDesign)提出了从业务设计到代码实现一致性的要求,不再对分析模型和实现模型进行区分。也就是说从代码的结构中我们可以直接理解业务的设计,命名得当的话,非...
SOA-SSH分层架构的设计与应用word版本.docxSOA-SSH分层架构的设计与应用word版本.docxSOA-SSH分层架构的设计与应用word版本.docxSOA-SSH分层架构的设计与应用word版本.docxSOA-SSH分层架构的设计与应用word版本....