Web开发技术史话

java web框架开发技术 此文档有助于帮助java初级人员学习web框架技术 立即下载

Web开发技术史话

 


1.     荒芜年代 1990-1992

1990年,HTML标记的出现。

这标志着Web开发时代的到来,B/S模型开始在之后的岁月中,不断的发展壮大,攻城略地蚕食着传统C/S的领域。

如同所有的新生事物一样,在web的史前岁月,web的开发技术在html标记诞生后,无论是在服务端还是客户端都缓慢的发展着。在相当长的一个时间内,它并未象今天这样辉煌。甚至于只是静态的文本标识。

关键字:HTML。

技术特性:静态文本显示,表现力和交互能力不足。

2.     帝国时代和封建诸侯 1993-1996

1993年,NCSA提出了CGI1.0草案。

web开发终于迎来了它的第二次重大飞跃。伴随着CGI,带来web的动态处理能力。CGI就是这个时代的国王。这个国度下的人们编写着一个个CGI程序,把标准输入重定向为http请求,处理请求数据,把标准输入重定向http响应。C语言一度统治了这个世界。

关键字:CGI。

技术特性:实现了客户端和服务端的动态交互,在程序代码写html标记,面向过程的开发方式,应用程序,多进程运行。

 

C语言的帝国在短暂的辉煌后,迅速灭亡。1994年Rasmus Lerdorf举起PHP大旗打响革命第一战,1995年第一个用Perl写得程序诞生,很快,Perl在CGI编程领域的风头就盖过了它的前辈C语言。随后,Python等著名的脚本语言也陆续加入了CGI编程语言的行列。1996年微软带来了ASP。

关键字:脚本语言。

技术特性:脚本代码和页面显示混合,面向过程,解释程序,线程运行,调试困难。

3.     工业文明 1996-1999

1997年,Sun公司推出Servlet规范。Java阵营终于迎来了自己的web英雄。1998年,JSP技术诞生。Servlet和JSP的组合(还可以加上JavaBean技术)让Java开发者同时拥有了类似CGI程序的集中处理功能和类似PHP的HTML嵌入功能,此外,Java的运行时编译技术也大大提高了Servlet和JSP的执行效率

关键字:servlet,jsp。

技术特性:代码和页面显示混合,线程运行,运行时编译。

 

1998年, Sun发布了EJB 1.0标准。1999年,Sun正式发布了J2EE的第一个版本。紧接着,遵循J2EE标准,为企业级应用提供支撑平台的各类应用服务软件争先恐后地涌现了出来。(同时2001年微软发布ASP.NET技术)

关键字:企业开发。

技术特性:Web开发从简单的信息展示变成企业电子商务应用,融入了系统开发中。开发视角从单一的页面转向全站管理;开发的关注点也从单一页面实现转向系统功能实现,页面只是作为用户交互的表现层存在系统中,依然重要但已经不是唯一的关注点。

 

客户端技术:

1996年和1997年是客户端技术的重要年份,在这两年中产生影响深远的技术:W3C提出了CSS的建议标准;Netscape推出自己的html扩展,支持JavaApplets和JavaScript,同时引入了QuickTime插件;IE支持 DHTML和ActiveX控件的功能;Macromedia推出Flash。

关键字:动态交互。

技术特性:在比与服务器动态交互晚了多年后,客户端自身与用户交互能力得到大大加强。不仅如此,applet和activex(特别是微软xmlhttp)以及后来的mozilla的xmlhttprequest更带来了客户端从被动与服务端交互到具有主动交互能力。

4.     多元文化 2000-2004

2001年,Struts1.0发布。

Web开发模型从Model 1 发展为Model 2(MVC)。

无论是开始的CGI,还是后来的ASP,PHP甚至是Servlet都是页面控制器模式,每个页面都知道本页面所需数据控制对象。基于Servlet发展了一批前端控制器模型系统,所有请求都转发到一个统一的控制程序上,经过处理后把数据转发到某个特定页面上,Java下的Struts,Spring MVC和Turbine等都是代表。

MVC的发展也演变出了——推技术与拉技术。

以Struts,Spring MVC和Turbine为代表的是推技术。而Tapestry和微软的ASP.NET则带来了拉技术。

伴随着推技术和拉技术的发展,在视图技术发展出不同方向:

推技术的需求下,模板技术开始红火地发展起来,Velocity和JDynamic就是的代表。无论是ASP下的模板技术,PHP模板技术还是新的开发模型的引入包括前端控制器和新页面控制器,都使用同一处理技术——占位符动态替换技术。模板引擎在解释模板时通过占位别名在内存查找对应的数据,并替换到视图中。当然,不同模板技术,其模板语言是和其对模板文件的处理都是不一样的。

而在拉技术的带领下,引入Web开发组件技术。Java下的Tapestry框架,JetSpeed所代表的Portal和Sun公司大力推广的JSF,以及微软的ASP.Net都大力发展了Web Component的开发模型。

 

客户端技术:

2000年, Mozilla发布XUL0.6; 2003年微软提出XAML。

关键字:rich client

技术特性:以DHTML、CSS和ActiveX、Applet所代表的Thin Client技术交互能力毕竟有限,人们需要更丰富的交互能力,这催生了Rich Client技术——利用XML描述客户端界面,而不仅仅是HTML或DHTML;同时引入新的交互方式Web Services。Mozilla下XUL技术以及微软的XAML都是代表。

5.     新技术革命——XML及其相关

1998年,W3C正式发布了XML 1.0标准。XML语言对信息的格式和表达方法做了最大程度的规范,应用软件可以按照统一的方式处理所有XML信息。

1999年,W3C制定出了XSLT标准,用以将XML信息转换为HTML等不同的信息展现形式;同年其研究小组提出了RDF(Resource Description Framework)标准草案。RDF在XML语法的基础上,规定了元数据的存储结构和相关的技术标准。

2000年,W3C发布SOAP(Simple Object Access Protocol)协议的1.1版。2001年,W3C发布了WSDL(Web Services Description Language)协议的1.1版。SOAP协议和WSDL协议共同构成了Web Service的基础。

2001年,W3C又开始着手制定OWL(OWL Web Ontology Language)标准。OWL语言是一种基于XML的语言,它比RDF更加深入、细致地描述信息内容。2003年,W3C成立了语义化Web Service研究小组(Semantic Web Services Interest Group),研究在Web Service中加入语义技术的相关问题。2004年2月,W3C宣布RDF和OWL标准正式成为W3C的建议方案。

 

6.     大事记

1990 HTML标记出现

1993年CGI 1.0的标准草案由NCSA提出

1994年Rasmus Lerdorf发明了专用于Web服务端编程的PHP语言

1995年Java诞生

1995年NCSA开始制定CGI 1.1标准

1995年第一个用Perl写成的CGI程序问世

1996年Netscape 2.0版中支持JavaApplets和JavaScript

1996年W3C提出了CSS的建议标准,同年,IE 3.0引入了对CSS的支持

1996年W3C在SGML语言的基础上,提出了XML语言草案

1997年Microsoft发布了IE 4.0,支持 DHTML

1996年插件开发方式开始风靡了浏览器的世界。Netscape 2.0引入了对QuickTime插件的支持, 同年IE 3.0正式支持在HTML页面中插入ActiveX控件的功能

1996年Macromedia收购了FutureWave,并将Jonathan Gay的发明改名为Flash

1996年Microsoft借鉴PHP的思想,在其Web服务器IIS 3.0中引入了ASP技术

1997年CGI1.2也被纳入了议事日程

1997年Servlet技术问世

1998年JSP技术诞生

1998年W3C正式发布了XML 1.0标准

2000年W3C发布SOAP(Simple Object Access Protocol)协议的1.1版

2001年ASP.NET技术诞生

南京邮电大学电工电子基础B实验六(组合逻辑电路) 南京邮电大学电工电子基础B实验五(组合逻辑电路);电工电子;南京邮电大学;计算机学院;实验报告;电路图; 阅读详情

相关推荐

鸿蒙设备部署轻量级Web服务器NexServer实践

Web服务器作为互联网基础设施的核心组件,其轻量化部署在移动终端领域具有重要实践价值。本文以鸿蒙操作系统为技术载体,深入解析微内核架构如何通过资源隔离和分布式软总线实现服务高可用。重点探讨NexServer这一专为嵌入式场景设计的轻量级服务器,其ARM原生支持特性与15MB级内存占用,在HTTP/2协议处理与WebSocket通信中展现出独特优势。在智能家居控制面板、边缘计算节点等物联网典型场景中,鸿蒙设备结合NexServer的方案相比传统Nginx部署可降低60%资源消耗。通过实测数据对比,该组合在50

weixin_30411239的博客 482

给领导提的关于WEB开发模式的建议,请大家看看水平是不是很次啊?

领导让开会讨论 WEB开发模式,自己做这方面已经一年多了但总觉得水平不够,不敢发言,下面是我的总结,请大家看看在什么水平上,有没有必要提出来?万分感谢WEB开发模式心得----------我觉得要提高WEB开发效率,减少耦合度,眼下最好的办法莫过于使用WEB框架、轻型的J2EE框架以及集成开发环境了。目前WEB框架比较多,但都是通用性的,使用起来相对罗嗦,不能完全满足我们产品的特殊要求

从java开始,到哪里结束? 1001

解决用VScode写中文注释,Vivado打开之后是乱码的方法

这样就解决了中文注释乱码的问题,此外如果使用notepad++写verilog代码的话直接在notepad++上面将编码格式改为ANSI格式即可,更加方便快捷,所以此方法仅针对习惯用VScode写Verilog的同学,如果有其他好办法的话欢迎评论区补充。首先,VScode中的中文默认编码格式是UTF-8,然后Vivado的编码格式是vivado 默认的应该是ANSI编码格式,刚开始我先按照网上说明的,将VScode中的编码格式改为GBK格式(点击右下角->点击通过编码保存)。

weixin_50573305的博客 5815

Servlet开发(一)

孤傲苍狼 只为成功找方法,不为失败找借口! javaweb学习总结(五)——Servlet开发(一) 一、Servlet简介   Servlet是sun公司提供的一门用于开发动态web资源的技术。   Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下2个步骤:   1、编写一个Java类,实现

面朝大海,春暖花开 1920

【OpenStack】OpenStack原理(一)——OpenStack发展及架构

OpenStack目前的七个核心组件,分别是计算(Compute)、对象存储(Object Storage)、认证(Identity)、用户界面(Dashboard)、块存储(Block Storage)、网络(Network)和镜像服务(Image Service)。

大数据分析BDA 2万+

【科技前沿】用深度强化学习优化电网,让电力调度更聪明!

Hey小伙伴们,今天我要跟大家分享一个超级酷炫的技术应用——深度强化学习在电网优化中的典型案例!如果你对机器学习感兴趣,或是正寻找如何用AI技术解决实际问题的方法,这篇分享绝对不容错过!👩‍💻✨

Jacklx888的博客 3247

servlet的诞生001

诞生        早期Web服务器和客户端浏览器的是通过CGI连接的。当Web服务器接收到请求后,会把请求交给CGI程序,然后启动并运行CGI程序对用户请求进行处理,CGI程序解析请求中的CGI数据,并处理,产生一个响应,一般为HTML页面,返回给Web服务器,最后Web服务器包装该响应,以HTTP响应的形式发送给客户端浏览器。     由于CGI程序编写困难,而且对用户请求的相应时间较

一个程序员的一些碎碎念 692

蓝桥杯第七届省赛试题--“模拟风扇控制系统”

题目要求 功能简述 “模拟风扇控制系统”能够模拟电风扇工作,通过按键控制风扇的转动速度和定时时间,数码管实时显示风扇的工作模式,动态倒计时显示剩余的定时时间,系统主要由数码管显示、单片机最小系统、按键输入和电机控制保护电路组成,系统框图如图 1 所示: 单总线驱动程序、CT107D 单片机考试平台电路原理图以及本题所涉及到的芯片数据手册,可参考计算机上的电子文档。程序流程图及相关工程文件请以考生...

qq_43280087的博客 2659

web一课一得

Web 标准的制定:为了推动 Web 技术的发展和互操作性,W3C(World Wide Web Consortium)成立于 1994 年,负责制定和推广 Web 标准。HTML 的发展:HTML 是 Web 页面的标记语言,最早版本的 HTML 包含了基本的文本、图像和链接元素。随着 Web 的发展,HTML 不断演变和更新,增加了更多的标签和功能,如表单、多媒体、样式等。Web 应用程序的兴起:随着 Web 技术的成熟和互联网的普及,Web 应用程序开始迅速发展。

2301_76862744的博客 1031

智能合约监控告警:提示工程架构师用AI Prompt实现精准预警

当AI大模型(尤其是代码理解模型如CodeLlama、GPT-4 Code)与区块链数据结合,智能合约监控迎来范式革新。AI模型如何精准理解智能合约的业务特殊性?如何避免"AI幻觉"导致的误报?如何让模型学会区分"正常异常"与"攻击前兆"?答案藏在"提示工程"(Prompt Engineering)中。理解特定智能合约的业务逻辑(如DeFi协议的清算机制、NFT的铸造规则)识别复杂的攻击模式(如重入攻击的调用链特征、闪电贷的套利路径)结合链上链下数据进行多维度推理(如关联价格波动与异常交易)

AI架构全栈开发实战笔记 1011

lammps 案例in文件汇总

进阶案例: 聚乙烯和石墨烯界面pull out模拟代码 反应力场reax/c设置方法及案例解析 石墨烯热导率模拟代码(NEMD方法) 圆锥形SiC纳米磨削单晶硅源代码 高熵合金FeNiCrCoCu纳米压痕模拟代码 fix indent命令实现纳米摩擦及摩擦力计算 Fe原子辐照轰击多层石墨烯模拟代码 铝基石墨烯复合物压缩变形in文件源代码 石墨烯自动卷曲到Fe纳米线模拟源代码 铝/石墨烯复合物结晶过程lammps模

lammps_jiayou的博客 9446

Web开发

vue是一套前端框架,免除原生JavaScript中的DOM操作,简化书写。基于MVVM的思想,实现数据的双向绑定,将编程关注点放在数据上。

cjl13143的博客 758

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Web开发技术史话 ZT

Web开发技术史话 1.     荒芜年代 1990-19921990年,HTML标记的出现。这标志着Web开发时代的到来,B/S模型开始在之后的岁月中,不断的发展壮大,攻城略地蚕食着传统C/S的领域。如同所有的新生事物一样,在web的史前岁月,web的开发技术在html标记诞生后,无论是在服务端还是客户端都缓慢的发展着。在相当长的一个时间内,它并未象今天这样辉煌。甚至于只是静

JESoft -- Garden 1268

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Web开发技术发展史话

  讨论Web开发技术的历史,当然要先说说Web的起源。众所周知,Web这个Internet上最热门的应用架构是由Tim Berners-Lee发明的。Web的前身是1980年Tim Berners-Lee负责的Enquire(Enquire Within Upon Everything的简称)项目。1990年11月,第一个Web服务器nxoc01.cern.ch开始运行,Tim Berners-

ToTem's BLOG 937

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Web开发技术发展史话 作者: 咏刚

讨论Web开发技术的历史,当然要先说说Web的起源。众所周知,Web这个Internet上最热门的应用架构是由Tim Berners-Lee发明的。Web的前身是1980年Tim Berners-Lee负责的Enquire(Enquire Within Upon Everything的简称)项目。1990年11月,第一个Web服务器nxoc01.cern.ch开始运行,Tim Berners-Le

感 受 快 乐 1006

WEB开发技术 知识点总结

WEB开发技术 知识点总结第一章:(填空判断)1、什么是WWWWWW是World Wide Web的缩写,中文译名“万维网”。Web是Internet提供的一种服务,是基于Internet、采用Internet协议的一种体系结构。2、Web三要素:统一资源定位(URL):解决网上资源在何处的问题。资源访问方式(HTTP):解决用什么方法访问资源的问题。超链接:提供在资源之间自由访问的手段。3、什么...

27Up的博客 1万+

web开发技术概述

HTTP协议(HTTP,超文本传输协议)是一个简单的请求响应协议,通常运行在TCP协议之上,该协议基于客户端/服务器模式,c/s之间是一次性的连接,每次连接只处理一个请求,服务器回应请求后立即关闭连接,下次请求只能重新建立连接。(是因为web服务器面向大量的internet大量用户只能提供给有限次的连接,即使释放连接,可以提高执行效率。)且还是一种面向对象协议,可以传输任意类型的数据,通过数据类型和长度来标识数据内容和大小,而且允许数据被压缩。

ytdd66的博客 1940

JAVA WEB开发技术作业 个人基本信息表单

🌴 2022.3.13 作业 🌳 form表单-个人基本信息 文章目录HTML form表单-个人基本信息🚀 要求🚀 效果图🚀 知识总结 🚀 要求 使用html的form表单中的各个标签,完成在上一题目中“个人基本信息”部分的表单输入页面的设计 个人基本信息中至少包括以下内容: 姓名、性别、出生日期、所属省份、兴趣爱好、手机号码、个人简介等。大家可以根据各项信息的特点选择合适的表单元素,可以编写css使页面呈现美观的效果 注意: 可以参照网络上一些页面,表格中的内容

张时贰的博客 4171
上一篇: 篇首寄语
下一篇: Servlet规范简介——web框架是如何注入到Servlet中的
emag_java
博客等级 码龄22年 29粉丝 21原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值