- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java软件架构设计方案
java 软件架构设计方案
1 设计思想
该架构方案设计原理包括:分层架构思想、领域驱动设计思想(DDD )、面向对象分析与设计。
采用多层(N-Layer )逻辑架构的实现方式对于降低系统开发的复杂度是非常必要的,并在设计、开
发、测试、部署及维护等各个环节为应用系统带来高可用性、高延展性等正面效应。
2 设计优缺点
2.1 优点
2.1.1 提高系统的可测试性
多层(N-Layer )架构,层与层之间是低耦合的,增加各层的独立性,从而也提高了可测试性,这样
开发出来的系统才更加健壮。
2.1.2 对解决方案的维护和管理变得更加简单
层内高内聚、层间低耦合的结构,使得系统实现与分层组织方式变得非常灵活方便,维护和管理将
非常直接,高效。
2.1.3 增加系统的可移植性(模板化)
在企业软件开发中,许多模块都是可通用的,例如日志、异常、缓存、验证模块等等。通过分层,
可以容易的分离出通用的模块,便于迅速应用到其他的项目,实现模板化。
2.1.4 数据库根据编码自动生成
框架Hibernate 技术优势,融入ORM 框架,实现了从代码生成数据库的强大功能,在开发测试阶段
数据库可以很容易应对业务的变化,从而大大提高了开发人员的效率。
2.1.5 增强系统的可伸缩性
同样借助于分层的优势以及架构中各部分设计的高内聚性,可以各层就像独立的模块,互相独立,
增删各个独立的模块,不会影响到其他的模块或层的功能,这样就增强了系统的可伸缩性。
2.1.6 实现编码自动化避免人为性能问题
新框架采用Hibernate 框架实现数据库访问的封装,日志、异常捕获以及AOP 拦截等常用功能,减
少重复模块编码量的同时,也避免了因人为因素导致的性能问题。
2.2 缺点
2.2.1 需要非常熟悉业务领域知识
在系统的整个开发过程中,需要对业务的非常熟悉才能正确完整的实现系统的业务逻辑,否则,就
偏离的架构的核心——领域模型,从而导致项目重构甚至失败。
2.2.2 不适合过于简单的项目
该架构本身就是为了应对复杂性而提出的,简单项目不需要采用领域驱动设计开发。
3 架构实现
3.1 整体架构说明
该架构使用JAVA 技术实现。整体架构可能会在以后的逐步完善中有所改变。目前的系统架构图如下:
表现层(Presentation Layer ):该层的主要职责是通过用户界面向用户展示必要的数据信息,
同时接收用户的反馈。
服务层(Service Layer ):该层提供对领域层业务的封装,通过网络或接口向上层(即表现
层)暴露粗粒度的业务服务。
领域模型层(Domain Model Layer ):该层的主要职责是展现业务/领域逻辑、业务处理状态,
以及实现业务规则,它同时也包含了领域对象的状态信息。这一层是整个应用程序的核心
部分,它可以包含下面这些概念和内容:
实体(Entities )
值对象(Value Objects )
领域服务(Domain Services )
仓储契约/接口(Repository Contracts/Interfaces )
基础结构层(Infrastructure Layer ):该层为应用程序的数据存取提供服务,它可以是应用程
序本身的持久化机制,也可以是外部系统提供的数据访问的Web Service 等。提供了能被其
它各层访问的通用技术框架,比如异常捕获与处理、日志、认证、授权、验证、跟踪、监
视、缓存等等。这些操作通常会横向散布在应用程序的各个层面,面向方面编程(AOP )
关注的就是如何在不影响对象本身处理逻辑的基础上来实现这些横切的却又必不可少的功
能点。
3.2 项目环境搭建
3.2.1 先决条件
该架构项目开发基于以下先决条件:
MyEclipse8.6 ;
Struts2,spring,Hibernate;
ANT,Xdoclet;
Oracle10g ;
3.2.2 环境搭建
文档评论(0)