第1章apache安装与配置win10 JSP去掉margin属性技术简介
JSP(Java Server Pages)技术是由Sun公司发布的用于开发动态Web应用的一项技术。它以其简单易学、跨平台的特性,在众多动态Web应用程序设计语言中异军突起,在短短几年中已经形成了一套完整的规范,并广泛地应用于电子商务等各个领域中。在国内,JSP现在也得到了比较广泛的重视,得到了很好的发展,越来越多的动态网站开始采用JSP技术。本章就对JSP及其相关技术进行简单的介绍。
1.1 认识HTTP协议
HTTP协议(Hypertext Transfer Protocol,超文本传送协议)是WWW服务器使用的主要协议,对HTTP协议细节的基本理解是编写JSP或Java小程序的开发人员所必需的。因此在学习JSP技术之前有必要更加仔细地研究一下HTTP消息的格式(这里的讨论源自HTTP/1.1协议规范。参见规范2616,网址为/)。HTTP协议的关键部分有HTTP请求和HTTP响应,以及客户端Web程序设计的一些基础知识,在第4章4.4节将会具体介绍。
二叉树的根结点1.2 客户端Web程序设计介绍
Web浏览器现已成为深受大多数用户喜爱的用户界面。HTML语言提供了丰富的控件,第三方厂商提供了Visual Basic编写的数百个额外的控件,这些都使得Web浏览器独具 特。
虽然Web浏览器与传统的GUI界面有一定的差距,但它提供了一种独立而又简单的方法来访问分布式资源,尤其是Internet资源。而且越来越多的客户端Web程序扩展技术变得更加成熟,出现了包括CSS、JavaScript、VBScript、动态HTML、Java1.1.Applet应用程序等技术在内的客户端Web程序设计技术,它们的相互结合使得Web程序更加迷人。下面简单介绍几种常用的客户端Web程序设计技术的特点。本书假定读者对这些技术都有一定的了解,不对这些技术作详细介绍。
1.2.1 CSS
CSS(Cascading Style Sheets)称为层叠样式表,是动态HTML技术的一个部分,但可以和HTML结合使用。CSS利用各式的范本样式来辅助HTML,其简洁的语法可以容易地控制HTML标记,而且最大的特点是可以将内容(HTML)与格式分开处理(以.CSS为后缀存储成一个独立的文件)。
jsp中文全称1.2.2 JavaScript
JavaScript是用于浏览器的第一种具有通用目的、动态的客户端脚本语言。Netscape于1995年首先提出了JavaScript,但当时将其称为LiveScript。后来Netscape迅速地将LiveScript改名为JavaScript,Java的开发商Sun与他们在同一年发表了一项声明。声明中指出Java和JavaScript将互相补充,但它们是截然不同的技术,这样才打消了很多人对这两项技术的错误理解。
linux配置当前用户环境变量JavaScript为创建用户界面控件提供了一种脚本语言。事实上,JavaScript在浏览器中插入了代码逻辑。它可以支持这样的效果:当光标在Web页的某个位置移动时验证用户输入或者变换图像。
Microsoft也编写出了自己的JavaScript版本并将其称为JScript。Microsoft和Netscape都支持一种围绕JavaScript和JScript的核心特性并由(European Computer Manufacturers Association,ECMA)标准组织控制的脚本语言标准。ECMA将其脚本语言命名为ECMAScript。
1.2.3 VBScript
在发布JScript的同时,Microsoft还开发了VBScript作为其Visual Basic程序设计语言的解释子集。Microsoft专门开发了VBScript,用于在Microsoft的Internet Explorer上支持Active X控件。
Active X是Microsoft拥有的面向对象的软件组件模型。像JavaScript一样,VBScript需要在浏览器中存在解释器支持。Microsoft将VBScript定位于JavaScript的一种变化形式,以供那些已经掌握了Visual Basic的程序员使用。只有Microsoft的浏览器和Microsoft的Web服务器Internet信息服务(Internet Information Service)才支持VBScript。
1.2.4 动态HTML
动态HTML(DHTML)支持JavaScript和Java等多项技术,但其最引人注目的特性是层叠样式表(Cascading Style Sheets,CSS)。层叠样式表可以帮助页面开发人员将显示元素从内容元素中分离出来。例如,与图书和杂志的页面布局相似的纯粹像素布局就需要 级联样式表。层叠样式表还支持颜、字体规范、显示图层和页边空白这样的页面元素 特征。
动态HTML(DHTML)文档对象模型(Document Object Model,DOM)使网页制作者可以直接地以可编程的方式访问Web文档上每个独立的部分,而不论被访问的是元素还是容器。这种访问方式包括了事件模型。事件模型令浏览器可对用户输入作出反应,通过执行脚本,无须从服务器下载一个新的页面就可以根据用户输入显示新的内容。动态HTML文档对象模型(DHTML DOM)以一种便捷的方式为广大普通网页制作者提供了丰富的网页交互性。
1.2.5 Java Applet(Java小应用程序)
Java Applet就是用Java语言编写的一些小应用程序,它们可以直接嵌入到网页中,并能够产生特殊的效果。包含Applet的网页被称为Java-Powered页,可以称其为Java支持的网页。
当用户访问这样的网页时,Applet被下载到用户的计算机上执行,但前提是用户使用的是支持Java的网络浏览器。由于Applet是在用户的计算机上执行的,因此它的执行速度不受网络带宽或者Modem存取速度的限制,用户可以更好地欣赏网页上Applet产生的多媒体效果。
在Java Applet中,可以实现图形绘制、字体和颜控制、动画和声音的插入、人机交互及网络交流等功能。Applet还提供了名为抽象窗口工具箱(Abstract Window Toolkit,AWT)的窗口环境开发工具,但AWT的设计是存在缺陷的,取而代之的Swing技术为Java GUI编程提供了强大丰富的API和灵活的结构设计,并在AWT基础上,提供了替代AWT重量组件的轻量组件。它们利用用户计算机的GUI元素,可以建立标准的图形用户界面,如窗口、按钮、滚动条等。目前,在网络上有非常多的Applet范例来生动地展现这些功能,读者可以去查阅相应的网页以观看它们的效果。
1.2.6 浏览器技术的作用与局限性
所有客户端技术都向Web浏览器添加了功能并帮助Web应用程序变得更加直观、更易于使用以及更加有趣。不过它们其中没有任何一项技术传递了服务。对于改进用户看到和请求这种服务的方式,它们的作用是有限的。
Java小程序是最全面和最强大的客户端技术,它通过使用复杂的缓存技术、流技术或灵活的编程方法,Java小程序看上去很像标准的桌面应用程序。不过,低速的网络连接或中断的Internet服务都会使得它起不到预期的效果。
客户端扩展添加到浏览器的功能甚至会产生负面效果。近些年的趋势是已经将功能从客户移到了服务器。人们将这描述为从胖客户(thick client)转移到瘦客户(thin client)模式。瘦客户将应用程序用户界面的显示从显示的控制逻辑中分离了出来。这种从胖客户的转移提供了许多优点。下面列出了其中一些重要的优点:
集中的应用程序部署:开发人员可以将应用程序或应用程序的更新版本部署到一个集中的应用程序服务器,而不是访问应用程序的多台客户计算机。
强制信息保持一致:每一个用户都共享同一种信息查看方式,而不是采用在个人的客户计算机上配置的查看方式。
集中的安全管理:管理员可以控制对服务器而不是每一台客户计算机上的信息的 访问。
1.3 JSP与其他动态网页技术
fprintf的头文件JSP技术可以以一种简捷而快速的方法生成Web页面。使用JSP技术的Web页面可以很容易地显示动态内容。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器、应用服务器、浏览器和开发工具共同工作。
JSP技术不是惟一的动态网页技术,也不是第一个,在JSP技术出现之前就已经存在几种优秀的动态网页技术,如CGI、ASP等。下面结合这些技术的介绍,讲述动态网页技术的发展和JSP技术的诞生。
1.3.1 JSP的开发背景及发展历史
在万维网短暂的历史中,万维网已经从一个大部分显示静态信息的网络演化到对股票进行交易和进行购书操作的一个基础设施。在各种各样的应用程序中,对于可能使用的基于Web的客户端,看上去没有任何限制。
基于浏览器客户端的应用程序比传统的基于客户机/服务器的应用程序有几个好处。这些好处包括几乎没有限制的客户端访问和极其简化的应用程序部署和管理(要更新一个应用程序,管理人员只需要更改一个基于服务器的程序,而不是成千上万的安装在客户端的应用程序)。这样,软件工业正迅速地向建造基于浏览器客户端的多层次应用程序迈进。
这些快速增长的精巧的基于Web的应用程序要求开发技术上的改进。静态HTML对于显示相对静态的内容是不错的选择;新的挑战在于创建交互的基于Web的应用程序,在这些程序中,页面的内容是基于用户的请求或者系统的状态,而不是预先定义的文字。
对于这个问题的一个早期解决方案是使用CGI-BIN接口。开发人员编写与接口相关的单独的程序,以及基于Web的应用程序,后者通过Web服务器来调用前者。这个方案有着严重的扩展性问题——每个新的CGI要求在服务器上新增一个进程。如果多个用户并发地访问该程序,这些进程将消耗该Web服务器所有的可用资源,并且系统性能会降低到极其低下的地步。
某些Web服务器供应商已经尝试通过为他们的服务器提供“插件”和API来简化Web应用程序的开发。这些解决方案是与特定的Web服务器相关的,不能解决跨多个供应商的解决方案的问题。例如,微软的Active Server Pages(ASP)技术使得在Web页面上创建动态内容更加容易,但也只能工作在微软的IIS和Personal Web Server上。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论