WEB框架总结
Web前端框架技术综述

58软件开发与应用Software Development And Application电子技术与软件工程Electronic Technology & Software Engineering●社科项目:武汉职业技术学院2020年社科项目(2020YJ010)。
1 引言1995年,网景公司发布第一款商业浏览器Netscape Navigator ,为了提高网页互动性,网景公司设计出第一个能够在浏览器端运行的脚本语言,命名为LiveScript 。
为了借助Java 语言的营销效应,遂改名为JavaScript 。
1996年,微软发布VBScript 和Jscript 两个脚本语言,内置于其IE 浏览器中。
为了确保JavaScript 占有市场领导地位,网景公司将JavaScript 提交到欧洲计算机制造商协会(ECMA )以便将其进行国际标准化,产生了ECMAScript 。
为了取得浏览器市场,网景公司在1998年成立了Mozilla 开源项目,准备开发下一代浏览器。
2003年,苹果公司发布了Safari 。
随着浏览器产品越来越多,即使有了ECMAScript 标准,但是由于标准制定较晚,所以每个浏览器都有各自的标准。
网页开发人员需要对同一个功能编写出多份代码,以适应不同浏览器。
直到2006年,John Resig 编写出jQuery ,封装实现浏览器兼容的JavaScript 细节代码,从此解决了网页开发人员处理网页兼容性问题的痛点,极大简化了前端编程。
直到今天jQuery 仍旧是使用最广泛的框架之一。
随着MVC 设计模式广泛应用于前端开发当中,Angular JS, Backbone JS, React JS, Vue JS 依次诞生并为大家所广泛使用。
本文将详细介绍五种框架的原理及优缺点,为立志于与做前端开发的学生普及框架知识,同时给出学习和实践中选择框架的建议和启示。
2 五大主流框架介绍下面按照前端框架诞生的时间线,依次讲解jQuery 、Angular JS 、BackBone JS 、React JS 、Vue JS 这五种广泛流行的框架。
框架体系知识点总结

框架体系知识点总结一、框架概述1.1 框架定义1.2 框架特点1.3 框架分类二、框架体系结构2.1 框架组成2.2 框架层次2.3 框架模式三、框架设计原则3.1 抽象原则3.2 封装原则3.3 继承原则3.4 多态原则四、常用框架介绍4.1 Spring框架4.2 Hibernate框架4.3 Struts框架4.4 框架4.5 Django框架五、框架应用实例5.1 Web开发框架应用5.2 移动端应用框架实践5.3 大数据框架应用案例5.4 人工智能框架应用场景六、框架技术发展趋势6.1 微服务框架6.2 前端框架发展趋势6.3 容器化框架6.4 人工智能开发框架七、框架体系的扩展7.1 插件化框架7.2 模块化框架7.3 可扩展性框架八、框架体系实践经验8.1 项目选择框架考虑因素8.2 框架组件选择与适配8.3 框架应用性能优化8.4 框架升级与维护以上是框架体系知识点总结的框架,接下来对每个部分进行详细的介绍。
一、框架概述1.1 框架定义框架是一种软件体系结构,它提供了开发应用程序所需的基础结构。
框架通常包括设计模式、类库、工具和其他组件,以及规定了开发过程中使用的约定和标准。
1.2 框架特点- 通用性:框架是通用的,可以用于不同领域的应用开发。
- 可重用性:框架中的组件和设计模式可以被多次使用。
- 优化性能:框架提供了经过优化的设计模式和算法。
- 易维护性:框架提供了模块化的设计,易于维护和扩展。
- 标准化:框架约定了开发过程中的标准和规范。
1.3 框架分类- 按应用领域分类:Web框架、移动端框架、大数据框架、人工智能框架等。
- 按语言分类:Java框架、.NET框架、Python框架、JavaScript框架等。
- 按设计模式分类:MVC框架、RESTful框架、ORM框架等。
二、框架体系结构2.1 框架组成一个完整的框架通常包括以下组成部分:- 核心组件:框架的基本组件和核心功能。
web端三大主流框架简述

web端三大主流框架简述作为一名资深开发人员,用过很多的web端框架。
在这里我们来聊聊目前web前端开发中比较主流的三大框架:React、Vue和Angular。
React是由Facebook公司推出的一款JavaScript框架,主要用于构建用户界面。
React采用了组件化,开发模式,将页面拆分成一个个可复用的组件,以提高代码复用性和开发效率。
React还提供了虚拟DOM(Virtual DOM)技术,可以实现高效的页面渲染和更新。
主要特点:1.简单简单的表述任意时间点你的应用应该是什么样子的,React将会自动的管理UI界面更新当数据发生变化的时候。
2.声明式在数据发生变化的时候,React从概念上讲与点击了F5一样,实际上它仅仅是更新了变化的一部分而已。
React是关于构造可重用组件的,实际上,使用React你做的仅仅是构建组建。
通过封装,使得组件代码复用、测试以及关注点分离更加容易。
Vue是一款渐进式JavaScript框架,也用于构建用户界面。
Vue具有轻量、易用、高效的特点,适合快速开发大型单页应用程序。
Vue提供了响应式数据绑定、组件化开发、指令系统、过渡效果等特性,使得开发者可以快速地构建出高质量的用户界面。
主要特点:1.遵循 MVVM 模式。
2.编码简洁, 体积小, 运行效率高, 适合移动/PC 端开发。
3.它本身只关注 UI, 可以轻松引入第三方插件开发或者嵌入第三方框架项目等。
Angular是由Google公司推出的一款JavaScript框架,也用于构建Web应用程序。
Angular采用了MVC(Model-View-Controller)模式,将应用程序分为数据模型、视图和控制器三个部分,以便于代码的管理和维护。
Angular提供了一系列的指令和服务,可以快速地实现复杂的数据绑定和页面交互效果。
同时,Angular还提供了强大的工具集,如TypeScript、Angular CLI等,使得开发者可以更加高效地开发Web 应用程序。
了解Web开发框架

了解Web开发框架Web开发框架是现代Web应用开发中不可或缺的工具。
它们提供了一套强大的工具和库,帮助开发人员更高效地构建功能丰富的网站和应用程序。
了解Web 开发框架的原理和常见的工作流程,对于任何想要从事Web开发工作的人来说都是至关重要的。
首先,让我们来看看Web开发框架的基本工作原理。
一个Web开发框架通常由两部分组成:前端和后端。
前端部分负责处理用户界面和交互,后端部分则用于处理数据和逻辑。
前端开发人员使用HTML、CSS和JavaScript等技术来创建用户界面,而后端开发人员使用服务器端语言(例如Python、Ruby或Java)来处理数据和逻辑。
Web开发框架的一个关键概念是MVC(模型-视图-控制器)架构。
MVC模式将应用程序分为三个主要部分:模型(处理数据)、视图(处理用户界面)和控制器(处理逻辑)。
这种分离可以使开发人员更容易管理和维护代码,同时也提高了开发效率和灵活性。
在实际的Web开发中,开发人员通常使用特定的Web开发框架来简化开发流程。
这些框架提供了一系列常用功能和工具,如路由、表单处理、数据库访问等,使开发人员能够更快速地开发功能。
此外,框架还提供了一些规范和最佳实践,帮助开发人员编写可扩展、维护和安全的代码。
目前,市场上有许多流行的Web开发框架可供选择。
其中,一些最受欢迎的包括Django、Ruby on Rails和Node.js等。
这些框架都具有其独特的特点和优势。
例如,Django是一个基于Python的框架,它强调代码的简洁和可读性,使开发人员能够快速构建功能强大的Web应用程序。
Ruby on Rails则是一个基于Ruby的框架,它非常注重开发速度和易用性。
而Node.js是一个基于JavaScript的框架,它利用了JavaScript在前后端开发中的通用性,使得全栈开发变得更加简单。
不仅如此,Web开发框架还可以与其他工具和库进行集成,进一步提升开发效率。
django实验报告总结

django实验报告总结一、引言django是一个基于Python的开源Web应用框架,被广泛应用于快速开发高质量的Web应用程序。
本实验报告总结了我在学习和实践django过程中的体会和收获。
二、django的优点和特点1. 简单易用:django提供了简洁明了的语法和强大的功能,使得开发者能够以最少的代码实现复杂的应用逻辑。
2. 高效快速:django的设计目标是高效快速地构建Web应用程序,它提供了丰富的功能和工具,极大地提高了开发效率。
3. 安全可靠:django提供了多种安全机制,包括防止SQL注入、跨站脚本攻击等,保障了应用程序的安全性。
4. 可扩展性:django采用了松散耦合的模块化设计,使得开发者可以方便地扩展和定制框架的各个组件。
5. 社区活跃:django拥有庞大的开发者社区,提供了丰富的文档和资源,解决问题变得更加容易。
三、实验过程及结果在学习django的过程中,我按照以下步骤进行了实验:1. 安装django:首先,我按照官方文档的指引,成功地安装了django框架,并配置好了开发环境。
2. 创建项目和应用:接着,我使用django-admin命令创建了一个新的项目,并通过python manage.py startapp命令创建了一个新的应用。
3. 编写模型:在应用中,我定义了数据模型,使用django提供的ORM功能,将模型映射到数据库,并执行数据库迁移操作。
4. 编写视图和模板:然后,我编写了视图函数,处理用户的请求,并渲染相应的模板,返回给用户。
在模板中,我使用django的模板语言,实现了动态的页面内容展示。
5. 配置URL路由:为了将用户的请求映射到相应的视图函数,我在项目的urls.py文件中配置了URL路由规则。
6. 运行测试:最后,我使用django提供的测试框架,编写了一些测试用例,对应用进行了全面的测试。
测试结果显示,应用的各个功能均正常运行。
四、实验心得和收获通过这次实验,我对django框架有了更深入的了解,并掌握了一些基本的开发技能。
web系统架构

web系统架构1 web ⼯作机制 什么是WEB - 万维⽹(World Wide web) ,是⼀个由许多互相链接的超⽂本⽂档组成的系统。
Web 的重要概念 - 资源: web 系统中对象称为资源 - URI: 统⼀资源标识符,⽤于只⼀个资源( HTM L ⽂档、图像、视频⽚段、程序)。
是⼀个相对服务器的地址例如/aaa/bbb/1.php - URL :统⼀资源定位符( URI 的⼀个⼦集)。
例如 /aaa/bbb/1.php - HTTP: 超⽂本传输协议,⽤于传输资源,使⽤者通过http 来获得资源。
应⽤层协议。
HTTPS2 web站点架构1. 浏览器的作⽤:⽤户提交请求给服务器,将服务器返回的响应解析出来2. web服务器:接受⽤户请求,并给⽤户做出响应,Windows下有IIS ,Linux下有Apache、Nginx3. web应⽤:⽤php、jsp、asp、aspx等开发语⾔开发⼀个web应⽤程序(博客、购物⽹站等)。
运⾏在服务器上4. 数据库:存储数据,数据库有⼀个接⼝,在应⽤程序中指定连接数据库的账户密码5. 中间件:举个例⼦,在Linux环境下,⽤Apache作为服务器想要运⾏⼀个Java程序,还需要Tomcat环境的⽀持,Tomcat就是⼀个中间件。
⽬前Apache等服务器和中间件的区分越来越少,可以⼴泛理解为中间件是Apache、IIS、Nginx、Tomcat、Jboss的统称。
web架构中每⼀个地⽅都存在被攻击的可能http明⽂的会被嗅探抓包,web服务器存在安全漏洞,数据库漏洞,最主要的web应⽤漏洞是写程序本⾝的漏洞(SQL注⼊、xss)。
xss就是浏览器的漏洞,浏览⽹站时挂马,在⽹站服务器的页⾯中嵌⼊连接,链接在另⼀台服务器上会下载⽊马程序到客户端,浏览器有漏洞的话会⾃动执⾏。
3 web应⽤的层次web应⽤CMS:⽂章管理系统不需要⽤户写代码可以直接创建,搭建⾃⼰开源的博客(例如WordPress、discuz)4 web安全问题4.1web 服务端软件安全问题服务⽀撑软件安全问题 - 软件⾃⾝安全漏洞 例: IIS5.0 超长URL拒绝服务漏洞 例: Unicode解码漏洞 - 软件配置缺陷 默认账号、⼝令 不安全的配置 例:IIS配置允许远程写⼊4.2 web 程序安全问题输⼊输出处理会话控制⽂件系统处理⽤户访问机制⽇志处理4.3 WEB 浏览器安全问题web浏览器 - WEB 应⽤的客户端 - 展⽰⽹页供⽤户查看和⽀持⽤户操作 - lnternet Explorer 、Firefox 、Opera 和Safari 等可能存在安全漏洞 - 基于Cookie 的攻击可能存在软件配置缺陷。
Web后端开发常用框架介绍

Web后端开发常用框架介绍随着社交网络、移动支付等互联网应用的不断扩展,Web后端开发也逐渐变得越来越重要。
为了更好地迎合客户需求,特别是Sir Tim Berners-Lee提出"Web3.0"概念后,Web后端框架也应运而生。
本文将介绍几个Web后端开发常用的框架。
一、DjangoDjango是一个由Python编写的开放源代码网络框架,其宗旨是快速开发,代码简洁且易于维护。
它基于MVC(Model-View-Controller)设计模式,以ORM(Object Relational Mapping)为核心进行数据库访问,提高开发效率。
另外,Django框架也自带后台管理系统和表单验证功能,大大简化了网站应用的重复性工作。
二、FlaskFlask是Python轻量级Web应用框架,它只有一个核心库并独立于其他库,使其更加灵活和可扩展。
Flask提供了许多扩展来支持不同类型的应用,例如WTForms、SQLAlchemy等。
同时,由于它的简洁性,小型网站的开发更适合使用Flask。
三、Ruby on RailsRuby on Rails是一个以Ruby语言编写的开源Web应用框架。
它是基于MVC(Model-View-Controller)设计模式的,在后端开发中提供了一套可靠的解决方案。
Rails关注于约定优于配置,将开发重点放在业务逻辑上,使得开发效率快速提升。
另外,Rails还有大量优秀的插件可用,使得其具有更加强大的功能和更高精度的调试。
四、SymfonySymfony是一个基于PHP编程语言的Web开发框架,具有高速,可扩展和高可靠性的特点。
与其他PHP开发框架相比,Symfony注重性能和安全,能够构建面向客户的主机应用程序。
Symfony使用“Bundles”概念,开发者可以从大量可用的插件库中选择自己的插件,以提高应用程序的功能。
五、ExpressExpress是一款轻量级的Web开发框架,使用JavaScript作为开发语言,可以运行在Node.js平台上。
WEB应用的三层

WEB开发三层架构概述关于三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。
区分层次的目的即为了“高内聚,低耦合”的思想。
1、表现层(UI):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。
2、业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。
3、数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增、删、改、查。
概述在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。
微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或成为领域层)、表示层。
三层结构原理:3个层次中,系统主要功能和业务逻辑都在业务逻辑层进行处理。
所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。
这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。
三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。
通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互。
表示层位于最外层(最上层),离用户最近。
用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。
业务逻辑层业务逻辑层(Business Logic Layer)无疑是系统架构中体现核心价值的部分。
它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统所应对的领域(Domain)逻辑有关,很多时候,也将业务逻辑层称为领域层。
例如Martin Fowler在《Patterns of Enterprise Application Architecture》一书中,将整个架构分为三个主要的层:表示层、领域层和数据源层。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Ajax支持
是不是内置了?是否便于使用?
书签能力
用户能否将某个页面收藏起来并且可以方便地返回到该页面?
验证
使用是否简单?是否支持客户端(JavaScript)验证?
可测试性
脱离容器测试控制器,是否足够简单?
提交和重定向
框架如何处理重复提交问题?
国际化
如何支持国际化?控制器利用国际化信息,是否容易?
框架测评
JSF
优点:
Java EE标准,这意味着有很大的市场需求和更多的工作机会
上手快速并且相对容易
有大量可用的组件库
缺点:
大量的JSP标签
对REST和安全支持不好
没有一个统一的实现。既有SUN的实现,又有A:
对覆盖绑定(overriding binding)、验证(validation)等提供生命周期管理
框架,直白点说,就是一个半成品,能够帮我们做一些事情的半成品。
框架的选择,就是看哪个框架最合适,从而减少开发的工作量,提高开发的效率和质量,并有效减少维护的工作量,最终达到节约综合开发成本,获取更多的收益。
五:选择Web开发框架的标准
声明:这里所谈的选择Web开发框架的标准,只是我们的总结和一家之言,并不是放之四海而皆准的真理,请根据您的体会客观的看待我们的总结。
9:完成了上面的开发步骤,页面基本的功能开发就告一段落,接下来开发人员需要考虑页面美观的问题了。大家可能会说:"不是有美工吗,还需要开发人员干什么?"。事实上美工多半只能出一个静态页面的美化模版,美工对于一推Java代码和Html的混杂物,多半是没有办法的,更不要说还有一些内容是动态生成的,美工就更不可能搞定了。还是得开发人员上阵,按照美工给的模版,开始添加Css:class、id、style......
7:逻辑层执行完过后,返回数据和信息到Web层,开发人员还需要写代码去处理,选择哪个页面来显示,如何显示这些数据和信息等。
8:在整个交互的过程中,还必须考虑到如何控制权限,如:某些数据不能显示,某些数据不能编辑等等;同样还需要考虑到消息的配置和国际化等等。这些功能起源于逻辑层,但是实际的控制要到Web层,这些都需要开发人员来控制。
1:数据展示
Web层需要从逻辑层获取需要展示的数据,然后以合理的方式在页面进行展示
2:人机交互
用户需要从界面上输入数据,在界面上进行按钮点击,进而触发事件,标准的事件驱动模型,然后跟后台进行数据交换,出现新的界面。
3:收集数据,调用逻辑层接口
Web层收到用户的事件请求,需要调用相应的逻辑层接口来进行处理,Web层是不会有任何逻辑处理的。调用逻辑层接口,需要传递参数,这时需要收集用户在界面上输入的数据,然后进行组织,组织成为逻辑层接口需要的数据封装形式(通常都是ValueObject)。
Struts 2:
通常更适合于那些希望可以真正开始做事并且愿意花费大量时间来学习他们使用的开源工具的小项目组。Struts 2的目标不是那些更喜欢拖放式开发的"扶手椅程序员"。
Wicket:
非常适合于这样的内/外部网应用:UI很复杂并且你希望可以充分利用你的开发者资源。
上面的总结,基本是突出了各个框架的长处。然而,哪些又是他们不好的地方呢?
4:完成前面3步,页面的表现形式的大致模样就有了,下面需要来做功能性的开发。第一个就是这些表现形式的值的来源,如:下拉列表显示的值从什么地方来。值的来源方式很多,有数据库中来、固定值、某断程序运行的中间结果、前面页面传递过来等等,当然典型的还是来自数据库。
好了,确定了值的来源,开发人员就要写代码来获取这些值,然后把这些值赋值到对应的表现形式里面。
了解了使用框架的必然性,下面来看看如何选择,当然我们的话题集中在Web层的开发框架。在谈这个问题之前,先来看看我们在Web开发中究竟需要做些什么工作:
二:Web层开发的工作
在J2EE开发中,分层是基本的思想,3层架构或者多层架构早已深入人心,在这里我们就把目光集中到Web层,看看到底Web层开发做了那些工作:
9:Web开发框架一定要能很好的结合目前公司的积累。在多年的开发中已有了很多积累,不能因为使用Web开发框架就不能再使用了,那未免有些得不偿失。
10:选择开发框架另外要注意的一点就是:任何开发框架都不可能是十全十美的,也不可能是适应所有的应用场景的,也就是说任何开发框架都有它适用的范围。所以选择的时候要注意判断应用的场景和开发框架的适用性。
缺点:
社区比较小
不如其他的项目活跃
ActionBean里面的URL是硬编码的
Struts 2
优点:
架构简单--易于扩展
标记库很容易利用FreeMarker或者Velocity来定制
基于控制器或者基于页面的导航
缺点:
文档组织得很差
对新特征过分关注
通过Google搜索到的大多是Struts 1.x的文档
6:Web开发框架最好能提供可视化的开发和配置,可视化开发对开发效率的提高,已经得到业界公认。
7:Web开发框架的设计结构一定要合理,应用程序会基于这个框架,框架设计的不合理会大大影响到整个应用的可扩展性。
8:Web开发框架一定要是运行稳定的,运行效率高的。框架的稳定性和运行效率直接影响到整个系统的稳定性和效率。
软件系统发展到今天已经很复杂了,特别是服务器端软件,涉及到的知识,内容,问题太多。在某些方面使用别人成熟的框架,就相当于让别人帮你完成一些基础工作,你只需要集中精力完成系统的业务逻辑设计。这样每次开发就不用白手起家,而是可以在这个基础上开始搭建。
使用框架的最大好处:减少重复开发工作量、缩短开发时间、降低开发成本。同时还有其它的好处,如:使程序设计更合理、程序运行更稳定等。基于这些原因,基本上现在在开发中,都会选用某些合适的开发框架,来帮助快速高效的开发应用系统。
另外:我们这里更多的讨论业务功能性应用程序的Web开发框架。
1:选择能够对我们的开发过程提供更多、更好帮助的Web开发框架
2:Web开发框架的学习一定要简单,上手一定要快,没有什么比使用能得到更深的体会。那些动不动就需要半个月或者一个月学习周期的框架,实在是有些恐怖。
3:一定要能得到很好的技术支持,在应用的过程中,或多或少都会出现这样或者那样的问题,如果不能很快很好的解决,会对整个项目开发带来影响。一定要考虑综合成本,其实这是目前应用开源软件最大的问题,碰到问题除了死肯文档就是查阅源代码,或者是网上搜寻解决的办法,通常一个问题就会导致1-2天的开发停顿,严重的甚至需要一个星期或者更长,一个项目有上这么几次,项目整体的开发成本嗖嗖的就上去了。
缺点:
HTML模板和Java代码紧挨着
需要对OO有较好的理解
Wicket逻辑--什么都用Java搞定
接着,Matt通过采访这些框架的作者,与他们讨论各种开源的Java Web框架,并且突出各个框架的长处、听取框架作者对其他框架的看法,希望借此了解这些框架的未来发展方向。
下列是一些被采访者:
JSF, Jacob Hookom
Tapestry
优点:
一旦学会它,将极大地提高生产率
HTML模板--对页面设计师非常有利
每出一个新版本,都会有大量的创新
缺点:
文档过于概念性,不够实用
学习曲线陡峭
发行周期长--每年都有较大的升级
Wicket
优点:
对Java开发者有利(不是Web开发者)
页面和显示绑定紧密
社区活跃--有来自创建者的支持
三:Web层开发的步骤
下面再来总结一下Web层开发的大致步骤(也就是需要开发人员做的工作):
注意:这里讨论的Web层开发,是不使用任何开发框架时候的开发。
1:写页面Html,到底有哪些数据需要在界面上表现
2:每个数据的具体表现形式,如:有的需要表现成为下拉列表,有的需要表现成为单选按钮等。
3:界面表现形式的逻辑布局,所谓逻辑布局是指某些数据的表现形式应该放在前面,某些应该放在后面;某些放在上面,某些放在下面。如:某个请假申请的业务,有请假开始时间和结束时间,很明显开始时间的表现就应该排在结束时间的前面。而美工是负责最后页面的美观,一般美工不能动界面的逻辑布局。
4:Web开发框架结合其他技术的能力一定要强,比如:在逻辑层要使用Spring或者Ejb3,那么Web开发框架一定要能很容易,很方便的与它们进行结合。
5:Web开发框架的扩展能力一定要强。在好的框架都有力所不及的地方,这就要求能很容易的扩展Web开发框架的功能,以满足新的业务需要。同时要注意扩展的简单性,如果扩展框架的功能代价非常大,还不如不用呢。
4:根据逻辑层的数据来重新展示页面
逻辑层处理完了,需要返回数据或信息到界面上。这个时候Web层需要根据返回的值选择合适的页面,然后展示这些数据或者信息。
从上面可以看出,Web层开发的主要工作集中在展示上,也就是图形用户界面。这一部分是用户直观感受应用程序的窗口,也是用户要求最多的地方,其表现形式也是最丰富的。
与许多表示层技术/框架无缝集成:JSP/JSTL、Tiles、Velocity、FreeMarker、Excel、XSL、PDF等
便于测试--归功于IoC
缺点:
大量的XML配置文件
太过灵活--没有公共的父控制器
没有内置的Ajax支持
Stripes
优点:
不需要书写XML配置文件
良好的学习文档
社区成员很热心
RIFE, Geert Bevin
Seam, Gavin King
Spring MVC, Rob Harrop
Spring Web Flow, Rob Harrop and Keith Donald
Stripes, Tim Fennell
Struts 1, Don Brown
Tapestry, Howard Lewis Ship