Web原理与应用开发
Hello各位old铁,我是酷酷的小张,我又来了!
HTTP协议
WWW是到目前为止最著名的分布式应用,中文名字为“万维网”,常简称为Web。WWW是目前世界上最具影响力的互联网服务,起源于1990年底,最早由
欧洲核物理研究中心的Tim Berners-Lee提出,其目的是为研究中心分布在界各地的科学家提供一个共享信息的平台。1990年11月,Tim
Berners-Lee和Robert Cailliau联合提交了“通用超文本系统”的建议方案,自从该方案提出后,WWW得到了迅猛的发展。从应用功能看,WWW是一种交互式图形界面的Internet服务,具有强大的信息连接功能,它使得成千上万的用户通过简单的图形界面就可以访问各个大学、组织、公司等的最新信息和各种服务。
从技术上看,WWW是一个基于HTTP的客户/ 服务器应用系统,即属于客户/ 服务器范型的分布式计算应用。
TCP / IP
TCP / IP(Transmission Control Protocol /
Internet Protocol,传输控制协议 / Internet互联协议,又名网络通信协议)是Internet最基本的协议和Internet国际互联网的基础。TCP / IP定义了电子设备接入Internet以及数据在期间传输的标准。TCP / IP协议不是TCP和IP这两个协议的合称,而是指Internet整个TCP / IP协议族。与七层OSI参考模型不同,从协议分层模型方面来讲,TCP / IP由4个层次组成:网络接口层、网络层、传输层、应用层。其中HTTP为应用层的重要协议之一。
HTTP协议原理
HTTP(HyperText Transport protocol,超文本传输协议)用于传送WWW方式的数据,是互联网上应用最为广泛的一种网络协议。Web开发技术
HTML
HTML(Hyper Text Markup Language)即超文本标记语言,用于描述网页。注意:HTML不是一种编程语言,而是一种标记语言。
JavaScript
JavaScript是一种基于对象(object)和事件驱动(event
driven)并具有安全性能脚本语言。使用它的目的是与HTML、Java脚本语言(Java小程序)一起实现在一个Web页面中链接多个对象,与Web客户交互作用,从而可以开发客户端的应用程序。它是通过嵌入或调用标准HTML语言中实现的。它的出现弥补了HTML语言的缺陷,它是Java与HTML折衷的选择。
XML
XML(Extensible Markup Language,可扩展标记语言)是一种类似于HTML的标记语言,主要用于结构化文档信息。XML和HTML为不同的目的而设计,区别包括:XML用于传输和存储数据,即XML的设计宗旨是传输数据,而非显示数据,而HTML仅用于显示数据;HTML的标签都是预定义的,而XML没有预定义标签,需要自行定义标签。
动态网页技术
动态网页与静态网页最大的区别在于网页与用户之间是否有交互反馈的过程,如动态网页上的留言板、点击数等。JSP、ASP、PHP、CGI等都是动态网页技术。
CGI原理
公共网接口(Common
Gateway Interface,CGI)是WWW技术中最重要的技术之一,有着不可替代的重要地位。CGI是外部应用程序(CGI程序)与Web服务器之间的接口标准,是在CGI程序和Web服务器之间传递信息的规程。
CGI规范允许Web服务器执行外部程序,并将它们的输出发送给Web浏览器,CGI将Web的一组简单的静态超媒体文档变成一个完整的新的交互式媒体。
CGI工作步骤如下:
- 客户端发出的请求。
- Web服务器激活CGI程序。
- CGI程序对客户端的请求作出反应。
- Web服务器将CGI的处理结果传送给客户端。
- Web服务器中断和客户端浏览器的连接。
- Web浏览器将CGI程序的输出显示到浏览器的窗体。
Web表单
Web表单是一种处理特殊类型的Web页面,该类型页面的功能包括:提供提示用户输入数据的图形用户界面;当用户点击页面上的“提交”按钮时,将调用Web服务器主机上的外部程序的执行。
Web会话
Cookie机制
Cookie机制原理
Cookie的属性
Cookie的有效期
Cookie的修改、删除
Session机制
Session机制原理
Session的常用方法
URL地址重写
Session中禁止使用Cookie
Applet
Applet是可通过Internet下载并在接收计算机上运行的一小段程序。Applet通常用Java语言编写并运行在浏览器软件中,典型应用为万维网网页页面定制或添加交互格式元素。
Servlet
Servlet是在服务器上运行的小程序。这个词是在Java Servlet的环境中创造的。JavaServlet是一种作为单独文件跟网页一起发送的小程序,通常在服务器端运行,可提供为用户进行运算或者根据用户作用定为图形等服务。
SSH
SSH不是一个框架,而是多个框架(Struts+Spring+Hibernate——的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活、易于扩展的多层Web应用程序。集成SSH框架的系统从职责上分为4层:表示层、业务
逻辑层、数据持久层和域模块层(实体层)。
Struts
MVC是Model、View、Controller的缩写,分别代表应用的3个组成部分,即模型、视图与控制器。3各部分以最少的耦合协同工作,从而提高应用的可扩展性及可维护性。
Sprint
Spring有如下有点:
低侵入式设计,代码污染极低。
独立于各种应用服务器,可以真正实现Write Once和Run Anywhere。
Spring的DI机制降低了业务对象替换的复杂性。
Spring并不完全依赖于Spring,开发者可自由选用Spring框架的部分或全部。
Hibernate
Hibernate是目前流行的开源对象 / 关系映射(Object
/ Relation Mapping,ORM)框架。Hibernate采用低侵入式的设计,完全采用普通的Java对象(POJO),而不必继承Hibernate的某个超类或实现Hibernate的某个接口。因为Hibernate是面向对象的程序设计语言和关系数据库之间的桥梁,所以Hibernate允许程序开发者采用面向对象的方式来操作关系数据库。