220 likes | 386 Vues
JSP 编程技术与应用. 第一章 JSP 概述 讲课人:徐伶伶. 背景知识 JSP 简介 Servlet 简介 JSP 与 ASP 、 PHP 比较 本章小结. 1. 背景知识. 万维网( world wide web/www ) 是世界上最大的电子信息仓库,由众多的 Web 站点组成。每个 Web 站点都包含一些特定的资源,这些资源存放于一台或多台被称为 Web 服务器的计算机上。 主页( Homepage ) 是某个 Web 站点的起点,就像一本书的封面,是链接到一个 Web 服务器上时显示的第一个网页。 超级链接
E N D
JSP编程技术与应用 第一章 JSP概述 讲课人:徐伶伶
背景知识 • JSP简介 • Servlet简介 • JSP与ASP、PHP比较 • 本章小结
1.背景知识 • 万维网(world wide web/www) 是世界上最大的电子信息仓库,由众多的Web站点组成。每个Web站点都包含一些特定的资源,这些资源存放于一台或多台被称为Web服务器的计算机上。 • 主页(Homepage) 是某个Web站点的起点,就像一本书的封面,是链接到一个Web服务器上时显示的第一个网页。 • 超级链接 Web上的页是相互连接的,单击被称为超级链接的文本或图形就可以连接到其他页,超级链接带下划线或边框并内嵌了Web地址。
1.背景知识——静态网页与动态网页 • 静态网页 是指网页一旦制作完成,就不能随意更改或者需要专业的技术人员才能修改。 注:不能实现用户与服务器之间的交互,制作周期长、更改困难,只适用于一些不需要经常更改内容的网页。 • 动态网页 指能够根据用户的需求而动态的改变的页面。不需要维护人员经常手动更新,它能够根据不同的时间、不同的人产生不同的页面。目前绝大多数网站采用的都是动态网页技术,如JSP、ASP、PHP等。
静态网页执行过程 任何Web服务器都支持静态网页: ① 用户首先在浏览器的地址栏中键入要访问的网页地址(即URL:UniformResourceLocator,统一资源定位符)并回车触发这个请求。 ② 浏览器将请求发送到指定的Web服务器上。 ③Web服务器接收这些请求,并根据.htm或.html的后缀名判断请求的是HTML文件。 ④Web服务器从当前硬盘或内存中读取正确的HTML文件,然后将它送回用户浏览器。
动态网页执行过程 ①用户在浏览器的地址栏中键入动态网页文件,并回车触发这个动态网页的请求。 ②浏览器将这个动态网页的请求发送到Web服务器。 ③Web服务器接受这些请求并根据扩展名(例如.jsp)判断请求的是动态网页,Web服务器从硬盘或内存中读取正确的动态网页文件。 ④Web服务器从当前硬盘或内存中读取正确的HTML文件,然后将它送回用户浏览器。 ⑤HTML文件被送回浏览器。 ⑥用户的浏览器解释这些HTML文件并显示结果。
1.背景知识——软件系统的两种模式 • C/S模式(客户端/服务器) 服务器只集中管理数据,计算任务分散在客户机上,客户机和服务器之间通过网络协议来进行通讯;客户机向服务器发出数据请求,服务器将数据传送给客户机进行计算,计算完毕,计算结果可返回给服务器。 • B/S模式(浏览器/服务器) 客户端通用的浏览器(Browser如IE)代替各种应用软件,服务器则为Web服务器。浏览器和服务器之间通过TCP/IP协议进行连接,浏览器发出数据请求,由Web服务器向后台取出数据并计算,将计算结果返回给浏览器。
两种结构比较: 传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件,没能提供用户真正期望的开放环境;B/S结构则不同,它的前端是以TCP/IP协议为基础的,企业内的WWW服务器可以接受安装有Web浏览程序的Internet终端的访问,作为最终用户,只要通过Web浏览器,各种处理任务都可以调用系统资源来完成,这样大大简化了客户端,减轻了系统维护与升级的成本和工作量,降低了用户的总体拥有成本(TCO)。
2.JSP简介——产生原因 • 人们不再满足于Web护送关于发展初期的由文本、图形和超连接组成的静态信息发布与浏览。 • 需要将Web技术与数据库技术集成在一起,客户端通过Web页面与服务器进行信息的交互及传递,并通过Web页面对后台数据库进行远程管理控制。 • 希望Web编程技术能做到与操作系统的平台无关,开发出来的组件具有可重用性以及发布信息兼具多样性和生动性。
2.JSP简介——什么是JSP • 是Java Server Page的简称,由Sun Microsystems公司倡导,多家公司联合建立的一种动态网页技术标准。 • JSP是在静态的HTML网页文件中加入JSP标记和Java程序片段(Scriptlet)构成JSP页面(.jsp文件)的。 • JSP可以将业务逻辑从内容层次分离出来,方便页面的静态或动态内容的修改,提高开发效率。
Web服务器在遇到访问JSP页面的请求时,首先执行其中的程序片段,然户将结果以HTML格式返回给客户端,程序片段可以操作数据库、重定向网页、发送电子邮件等。所有的程序执行都是在服务器端执行的,因此对客户端的浏览器要求较低。Web服务器在遇到访问JSP页面的请求时,首先执行其中的程序片段,然户将结果以HTML格式返回给客户端,程序片段可以操作数据库、重定向网页、发送电子邮件等。所有的程序执行都是在服务器端执行的,因此对客户端的浏览器要求较低。
2.JSP简介——执行过程 • 通过客户端浏览器,以超文本(HTML)形式通过表单(FORM)向Web服务器提出请求。 • 服务器得到客户端的请求后,由Web服务器上的JSP引擎把JSP代码、相关组件、Java脚本以及HTML代码,转化成为Servlet代码。 • 接着由JSP引擎调用Web服务器端的Java编译器对Servlet代码进行编译。 • 最后,由Java虚拟机执行编译文件,并把客户端的请求结果以标准HTML页面的形式返回。
Web服务器 Windows NT或 Windows 2000 Server等 HTTP请求 JSP *.JSP 客户端 HTML和FORM JSP引擎 浏览器 JavaBean 脚本 标准HTML页面(返回结果) ①代码转化 Servlet代码 ②编译 .class文件 Java编译器 ③执行编译文件 Java虚拟机
2.JSP简介——总结 • 由于JSP是以Java语言为基础的,因此继承了Java语言“一次编写、随处运行”的特点,具有良好的可移植性和平台无关性。 • 开发人员不一定要熟悉Java语言,因为JSP将许多强大的功能封装成自定义标签,可以运用这些定义好的标签进行开发,而不必掌握复杂的Java语法。 • 绝大多数JSP页面可依赖于可重用、跨平台的组件(JavaBeans或EJB)来实现Web应用程序中较复杂的处理,这种基于组件的开发方式加快了Web应用程序的整体开发进度、大大降低了开发成本。
3.Servlet简介 • Servlet是指为Web开发人员提供的一种简单、一致的机制,用来开发服务器端的应用程序,来扩展Web服务器的功能。 • 执行过程: Servlet代码本身就是Java代码,在客户端第一次请求时,服务器需要将Servlet代码载入内存,(同时服务器将其编译成class文件)在以后请求时不需要载入,直接通过执行Servlet代码产生的class文件来返回结果。 • 优点:具有Java的所有优点:跨平台、安全、易开发。 • 缺点:页面显示和业务逻辑没有分离编写难度较大。
4.JSP与ASP、PHP比较 ASP简介: • ASP(Active Server Pages)是Microsoft于1996年11月推出的Web应用程序开发技术。 • ASP是一个服务器端的脚本环境,可以生成和运行动态的、交互的、高性能的Web服务器应用程序。 • ASP既不是一种语言、也不是一种开发工具,而是生成动态的、交互的Web应用程序一种方法和技术。 • ASP的主要特性是能够把HTML文件、脚本(script)和基于COM标准的组件有机的结合在一起,形成一个能够在服务器上运行的动态Web应用程序,并能把按用户要求制作的标准HTML页面送给客户端浏览器。
4.JSP与ASP、PHP比较 ASP优点: • 开发、维护快速简单:通过文本编辑器或专门集成开发环境开发。 • 编程语言通用:VBScript、JavaScript等多种脚本语言。 • 内置对象和组件:提供多种功能强大内置对象和组件并允许用户编写ActiveX控件。 • 安全性:使用Windows NT的安全机制,并可通过授权机制规定使用范围。 • 与浏览区无关性:ASP是服务器端的脚本执行环境,只需将脚本执行结果返回客户端浏览器。
4.JSP与ASP、PHP比较 ASP缺点: • 主要不足是平台适应性差。 主要是在Windows98环境下的PWS(Persona lWeb Server)及Windows NT、Windows 2000Server环境下的IIS(Inernert Information Server)上运行。 • 不支持Linux、UNIX平台。
4.JSP与ASP、PHP比较 PHP简介: • PHP(Hypertext Preprocessor,超级文本预处理器)在1994年发布第一个版本。与ASP类似,也是一种服务器端的脚本语言,是完全免费的。 • PHP用于管理动态内容、支持数据库、处理会话跟踪,甚至构建整个电子商务站点。支持许多流行数据库。
4.JSP与ASP、PHP比较 PHP优点: • 跨平台性好:支持Windows系列、Linux、UNIX以及Solaris等操作系统,编写一次即可运行在任何操作系统上。 • 简单易学:采用C语言语法、提供对象和类、支持Microsoft的COM和Sun的JavaBean组件技术。 • 与数据库交互良好:对现今流行的数据库几乎都提供了支持。
4.JSP与ASP、PHP比较 PHP缺点: • PHP对各种数据库没有统一的接口标准,对于每一种数据库几乎都有一个不同的接口,要编写不同的数据库操作代码。 • 由于PHP的每一种扩充模块并不是完全由PHP本身来完成的,需要许多外部应用程序库。 • PHP大多安装在Linux、UNIX系统上,安装复杂。 • PHP将源码开放,完全免费,得不到太多的商业支持,不是一种工业标准。
5.本章小结 JSP特点: • 平台无关性 • 可移植性 • 运行效率高 • 组件的可重用性强 • 数据库连接方便 • 安全性好