java web框架的分层_Web分层架构.ppt

Web分层架构整理

Java Web分层架构 1.1 软件架构 1.1.1 基本概念 什么是软件架构 软件架构(Software Architecture)是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计。软件架构是一个系统草图,它描述的对象是直接构成系统的抽象组件。各个组件之间的连接,明确并相对强加于地描述组件之间的通信。在实现阶段,这些抽象组件被细化为实际的组件,比如具体的某个类或者对象。在面向对象领域中,组件之间的连接通常用接口来实现。 什么是Java Web软件架构 Java Web 软件架构是指基于J2EE技术的构建的软件架构,根据Java Web的分层设计可以选择不同的软件框架。例如,控制层Struts、Spring、WebWork,持久层Hibernate、IBatis 等。由于Java界拥有大量的优秀开源软件,使得Java Web软件架构设计变得非常方便。 什么是软件架构原型 一个软件架构原型是所提出的新产品的部分实现。它包括软件系统的底层架构组装、系统的基本功能实现,在此基础上开发自己的产品。 软件架构师 软件架构师(Software Architect)是软件架构的总设计者,通常由技术水平较高、经验较为丰富的人担当。他们需要承担软件系统的架构设计,需要设计系统的元件划分、元件之间如何发生相互作用,并对系统中的,物理的、系统的重要决定。 1.1 软件架构 1.1.2 软件架构历史 早在19世纪60年代,诸如E.W.戴克斯特拉就已经涉及软件架构这人概念了,自19世纪90年代以来,由于Rational Software Corporation和Microsoft内部的相关活动软件架构这个概念就开妈流行起来。 卡内基梅隆大学,Mary Shaw和David Garland 于1996年写了一本叫做《Software Architecture Perspective on an Emerging Discipline》提出了软件架构的许多概念,如软件组件、连接器、风格等. 加州大学的埃尔文分校的软件研究院所做的工作则主要集中于架构风格、架构描述语言及动态框架。 1.1 软件架构 1.1.3 软件架构的标准 可靠性(Reliable):软件系统对于用户的商业经营和管理来说极为重要,因此要示软件系统必须非常可靠中。 安全性(Secure):软件系统所承担的交易的价值极高,系统的安全性非常重要。 可扩缩性(Scalable):软件必须能够在用户的使用率、用户数目增加很快的情况下,保持合理的性能。只有这样,才能适应用户的市场扩展可能性。 可定制化(Customizable):同样的一套软件,可以根据客户群的的不同和市场需求的变化进行调整。 可扩展性(Extensible):在新技术出现的时候,一个软件系统应当允许导入新技术,从而对现有系统进行功能和性能的扩展。 可维护性(Maintainable):软件系统的维护包括两方面,一是排除现有的错误,二是将新的软件需求反映到现有系统中去。一个易于维护的系统可能有效地降低技术支持的花费。 客户体验(Customer Experience):软件系统必须易于使用。 市场机制(Time to Market):软件用户要原则性同业竞争,软件提供商也要面临同业竞争,要以最快的速度争夺市场先机。 1.2 J2EE Web开发模型 1.2.1 一层架构模式 直接用JSP文件进行所有功能开发。 图1-1 一层架构图 优点:逻辑简单、容易理解、开发速度快,通常用于开发简单的Web 应用程序; 缺点:代码可读性差,重用率低。 1.2 J2EE Web开发模型 1.2.2 两层架构模式 在JSP的基础上引入JavaBean组件,把大量的代码放到JavaBean组件中然后通过JSP来调用组件JavaBean组件完成业务操作。 图1-2 二层架构图 优点: 实现了业务逻辑和JSP页面的分离,由JavaBean承担,JSP负责表示逻辑和控制逻辑,增加了程序的可读性与代码的重用率。 缺点: 表示逻辑和控制逻辑混在一起,程序的维护与修改困难,不利于分工合作。 1.2 J2EE开发模型 1.2.3 三层架构模式 在两层架构的基础上引入了“控制器”的概念,控制器由Servlet来担任。 图1-3 三层架构图 特点: JSP变成单一的完成显示任务的表示层Viewer,JavaBean承担事件逻辑变成了模型层Model,Servlet主要负责逻辑控制变成了Controller,从而就构成了MVC模式。 MVC清楚的划定了程序员与设计者角色界限。让设计者集中于系统逻

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值