当前位置:文档之家› jsp讲义

jsp讲义

jsp讲义
jsp讲义

第一章JSP概述

1.1 什么是JSP

JSP(JavaServer Pages) 是由Sun公司倡导、多家公司参与, 于1999年推出的一种动态网页技术标准.它是基于Java Servlet的WEB开发技术,利用这一技术可以开发动态的、高性能的WEB应用程序.在HTML文件中加入Java程序片段和JSP标记,就构成了JSP网页.在技术方面, JSP与ASP非常相似.

1.2 JSP的优势

JSP技术主要有以下优点:

1.JSP代码跨平台, 即一次编写,处处运行

众所周知,由于微软的垄断性,它的产品可移植性做得十分差,ASP也不例外,在Windows平台下编写的ASP代码,很难拿到别的平台下运行,相反,JSP使用的是Java 语言,它继承了Java语言的特点——―一次编写,处处运行‖,这种概念正越来越深远地影响着因特网行业的交互式Web页面的设计理念。JSP页面可以非常容易地跨平台、跨Web 服务器软件来设计和开发源码。

2.JSP组件跨平台

JSP组件(企业JavaBeans、JavaBeans或定制的JSP标签)都是跨平台可重用的。企业JavaBeans组件可以访问传统的数据库,并能以分布式系统模式工作于Solaris、Linux、UNIX和Windows平台。

3.支持多种网页格式

目前, JSP技术支持的网页格式还没有一个明确的标准。一般来说,JSP技术既可以支持HTML/DHTML的传统浏览器文件格式,又可以支持应用于无线通信设备如移动电话、PDA等设备进行网页预览的WML文件格式,还可以支持其他一些B2B电子商务网站应用的XML格式。

4.JSP标签可扩充性

尽管ASP和JSP都使用标签与脚本技术来制作动态Web网页,JSP技术允许开发者扩展JSP标签,定制JSP标签库,所以网页制作者充分利用与XML兼容的标签技术强大的功能,大大减少对脚本语言的依赖。由于定制标签技术,使网页制作者降低了制作网页的复杂度。

5.健壮性与安全性

由于JSP页面使用的脚本语言是java语言, 因此,它就具有java技术的所有好处,包括健壮的存储管理和安全性.

1.3 JSP的劣势

1. JSP技术极大的增加了产品的复杂性.为了获得系统的跨平台功能和产品伸缩能力,java系统开发了多种产品,如,JRE、JDK、J2EE、EJB、JSWDK、JavaBeans ,只有有效地将它们组合在一起,才能产生强大的功能.

2. java的高效率运行需要占用大量的内存和硬盘空间. 一方面,java的高速运行是通过 .class文件常驻内存来实现的.另一方面,还需要硬盘空间来存储一系列的.java 文件和.class文件以及对应的版本文件.

3. JSP程序调试困难.JSP页面执行时, 首先被转换为 .java文件(Servlet), 然后将.java文件编译为字节码文件. 这样,出错信息实际上指向的是转换后的那个.java文件(Servlet), 而不是JSP本身.

1.4 JSP与ASP比较

总的来说,JSP和ASP在技术方面有许多相似的地方。它们都是基于Web的应用程序开发方案,它们都是在Web服务器端执行的程序.ASP在网页制作中占据了一定的地位,但是其本身还是有很大缺点. JSP出现在ASP之后,兼顾了ASP的很多优点,同时也克服了ASP的一些缺点,是一种比较成热的网页开发程序语言。以下是五个方面的比较:

1. 具有相同的程序结构:开发的WEB应用程序,都是将用户界面和业务逻辑分开.

2. 采用不同的编程语言: JSP采用的是java语言; ASP采用的是JavaScript或VBScript脚本语言.

3. 可支持的WEB服务器:JSP支持流行的Web服务器,如Apache,Resin,Tomcat和Microsoft lIS. 而ASP只支持Microsoft IIS或者Personal WebServer。

4. 可支持的操作系统平台: JSP与平台无关,可以在所有支持Java的平台上运行,包括Linux,Unix,Windows及WindowsNT.而ASP只支持Windows.

1.5 JSP、ASP测试报告

?在ASP盛行的今天,JSP在执行效率方面是否有优势? 下面是第三方的测试数据:

?首先测试的是JSP,测试采用20000*20000次循环运算,该程序只用了不到3秒

的时间就运行结束了。

?下一步测试的是ASP,测试采用20000*20000次循环运算,运行时间竟然达到6

分零7秒

?另外,数据库的链接速度也是影响浏览速度的重要环节,接下来我们又对数据库链

接做了测试。测试程序在此省略.

?对Oracle 8进行1000次Insert,Update,Select,Delcte操作,JSP需

要13秒,ASP需要73秒.

1.6 JSP技术前景

目前在国内PHP与ASP应用最为广泛。而JSP由于是一种较新的技术,国内采用的较少。但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。三者中,JSP应该是未来发展的趋势。世界上一些大的电子商务解决方案提供商都采用JSP/Servlet方案。比较出名的如IBM的E-business,它的核心是采用JSP/Servlet

的Web Sphere。它们都是通过CGI来提供支持的。但去年10月后它推出了Enfinity,一个采用JSP/Servlet的电子商务Application Server,而且声言不再开发传统软件。

本章小结

JSP是Sun公司推出的一种Web开发技术。JSP网页由HTML标记、JSP标签和Java 程序片段组成。

与ASP相比,JSP在可移植性,平台独立性,及程序性能具有更大的优越性。世界上一些大的电子商务解决方案提供商都采用JSP/Servlet技术,JSP应该是未来发展的趋势。

心得体会

(1)JSP与ASP比较:JSP技术比ASP技术要复杂得多,功能也相对强大。但也基于这个原因ASP相对JSP要容易上手,运行速度也比较快。考虑到成本问题,一般开发中小型网站多数选用ASP,但开发的是大型或是超大型,JSP的优势就比较明显了。

(2)Java语言与JavaScript脚本语言的区别:Java与JavaScript分别是两个公司开发的两个不同的产品,作用与用途不一样。Java是Sun公司推出的面向对象的程序设计语言;JavaScript是Netscape公司为扩展Netscape Navigator功能的产品。简单来说,JavaScript不是Java的子集。

第二章JSP相关知识

2.1 应用程序体系结构

随着WEB技术的出现。早期网络的集中计算逐渐被分布式计算所代替。WEB技术是一种分布式计算技术,使用这种技术构建企业应用时,通常需要开发大量的程序,把这些程序分布在不同的计算机上,在应用中承担不同的职责。如,有的程序展示用户界面,有的程序进行逻辑计算,有的程序进行数据处理。企业级应用系统通常分成两层、三层或N层架构。下面介绍应用程序的三层和二层架构模型。

2.1.1 三层架构模型

?按照程序承担的不同角色,把应用程序分为三层:

1.数据表示层:提供用户数据输入界面和数据展示界面,运行在客户机上。

2.逻辑计算层:提供数据计算功能,运行在应用服务器上。

3.数据处理层:提供数据库处理功能,运行在数据库服务器上。

1 三层架构模型

应用程序的三层架构模型,如图2-1所示。

数据展示层逻辑计算层数据处理层客户机应用服务器数据库服务器

图2-1三层架

?客户机:本地用户使用的计算机,利用客户软件请求应用服务器提供服务。

?应用服务器:接受客户请求进行数据计算,并把计算结果返回给客户。JSP页面使

用的应用服务器,一般由JSP引擎、Servlet引擎和WEB服务器组成。

?数据库服务器:提供数据处理和事务处理.当前流行的数据库服务器有Oracle、

Infomix,、Sysbase,、Sqlserver2000.

2.B/S/S架构和C/S/S架构

根据客户端软件的运行机制不同,三层架构又分为C/S/S架构和B/S/S架构.在WEB 应用中,最早流行的是C/S/S架构,后来逐渐被B/S/S架构代替.采用C/S/S架构,则每台客户机都必须安装客户端软件,安装维护困难,成本高;采用B/S/S架构,客户端软件安装在应用服务器上,安装维护方便,成本低。

?客户端:简写C(Client),展示数据层的软件安装在客户机上,运行时不需要浏

览器支持.

?浏览器:简写B(Browser),展示数据层的软件部署在应用服务器上,通过客户请

求,下载到客户机的浏览器上执行,需要浏览器支持.

?服务器:简写S(Server),表示应用服务器或者数据库服务器.

2.1.2 二层架构模型

?在二层架构模型中,由同一程序来实现逻辑计算层与数据处理层,即,把逻辑层与

数据处理层合并为一层.这时,应用服务器和数据库服务器可能是同一台计算机.根

据客户端软件的性质,可分为C/S 结构和B/S 结构.

? 下面是二层架构模型,如图2-2所示

2.1.3 JSP 技术支持的架构模型

? JSP 技术开发的程序结构只能是B/S/S 结构或B/S 结构。下面是JSP 技术支持的

一般层次模型,如图2-3所示。

? 通常情况下,JSP 页面由展示用户界面的HTML 标记和进行数据计算两部分组成,

因此数据展示层代码和数据计算代码可能处在同一JSP 页面,它们都部署在WEB 服务器端。

? JSP 页面的三种形式:

1. JSP 页面=HTML 标记+java 程序片

2. JSP 页面=HTML 标记+Servlet 模块

3. JSP 页面=HTML 标记+Bean

一般来说,java 程序片、Servlet 模块实现逻辑计算功能,Bean 实现数据处理功能,HTML 标记实现数据展示功能。JSP 页面中的java 程序片最终被JSP 引擎转译为Servlet 模块,当客户发出Servlet 请求时,由Servlet 引擎将这些应用Servlet 模块载入内存运行,以处理客户请求。

2.2 应用程序服务器

上面介绍了程序体系结构,下面讨论程序运行的主要平台,即应用程序服务器的组成和作用。JSP 技术支持的应用服务器一般由JSP 引擎、Servlet 引擎和WEB 服务器组成。JSP 引擎将JSP 页面转译并编译为相应的字节码文件(Servlet 应用模块),Servlet 引擎将客户的请求传递给相应的Servlet 模块;WEB 服务器接受客户的请求,并把处理的结果返回给客户。

2.2.1 web 服务器

? web 服务器是一种请求/响应模式的服务器。即由客户机向服务器提出服务请求,

服务器接到请求后,进行服务处理,将处理的结果返回给客户机(响应)。客户机与服务器间的通讯协议是HTTP 协议。

逻辑计算与数据

客户机 应用服务器

图2-2二层架构模型

图2-3 JSP 技术支持的一般模型

? 1.请求/响应模式,如图2-4所示

2.2.1 web 服务器

2.流行的web 服务器

WEB 服务器有很多,流行的WEB 服务器有WebLogic 、WebSphere 和Tomcat 三种。这三种服务器都带有JSP 引擎和Servlet 引擎。

2.2.2 JSP 引擎和Servlet 引擎

? JSP 引擎和Servlet 引擎都是系统模块(为应用程序提供服务的模块),也属于

Servlet 模块,它随着WEB 服务器启动载入内存,也随着WEB 服务器关闭而释放。Servlet 模块分两类:一类是应用Servlet,它是JSP 页面转译并编译的结果,即应用程序员编写的Servlet ;另一类是系统Servlet,如JSP 引擎、Servle 引擎。

? JSP 引擎 的作用是当客户向服务器发出JSP 页面请求时,将JSP 页面转译为

Servlet 源代码,然后调用javac 命令,把Servlet 源代码编译为相应的字节码,并保存在相应目录中。

? Servlet 引擎的作用是管理和加载应用Servlet 模块.当客户向相应的应用

Servlet 发出请求时,Servlet 引擎把应用Servlet 载入虚拟机运行,由应用Servlet 处理客户请求,将处理结果返回客户。

2.3 HTTP 协议

客户与WEB 服务器通讯是通过HTTP 协议来完成的。HTTP 协议是基于请求/响应模式,即客户与服务器的每一次交互往往始于客户提出一个请求,服务器给出响应后结束。客户向服务器传递的信息称为HTTP 请求包,服务器向客户传递的信息称为HTTP 响应包.

1.HTTP 请求包

下面是HTTP 请求包的主要组成:

? 请求方法:要求服务器执行的动作或者服务。例如,get 请求,表示客户希望下载

资源。

? URI :资源所在的位置.

? MIME 格式信息:要求客户向服务器发送信息时应采用的文件类型。

? 协议版本号:请求包所用的HTTP 协议版本,通常为HTTP/1.0或HTTP/1.1.

2.HTTP 响应包

下面是HTTP 响应包的主要内容

? 状态行:表明服务器处理客户请求是否成功的信息.

? MIME 格式信息:要求服务器向客户传递信息时采用的文件类型.

3.HTTP 协议的事务处理过程

HTTP 的一次简单的事务处理包括5个步骤:

① 建立连接

HTTP 协议是一种无状态协议,对于每一次请求都要建立一个新的连接.

② 发送请求

客户向服务器发送一个请求,请求某种类型的服务.

W E B 服务器 ②处理 客户机 ①请求

③响应

③提供服务

服务器为这个HTTP请求提供服务,即开发人员编写一个Servlet模块来处理这个HTTP请求.

④发送响应

服务器对请求处理完以后,将处理结果返回给客户。

⑤关闭连接

客户的请求、服务器的响应处理完后,关闭连接。

HTTP请求包中可使用的请求方法有GET、POST、PUT、DELETE、OPTIONS。相应地,处理这些请求的Servlet模块中也有以上几个处理方法,由这些方法的代码部分来处理客户的请求。

本章小结

WEB应用程序体系结构分为二层架构、三层架构及N层架构。JSP应用程序运行的服务器,即应用服务器主要由web服务器、JSP引擎和Servlet引擎构成。客户端与服务器端通讯是通过HTTP协议来完成的。

心得体会

(1)JSP技术是应用在Web上,基本都是用B/S(Browser/Server)架构。

(2)通过了解应用程序体系结构,可以让我们进一步了解JSP的运行机制,真正了解JSP 运行的平台, 通过学习HTTP协议,让我们懂得客户与服务器之间是如何通讯的。

第三章JSP运行环境

3.1 安装和配置JDK

JDK(Java Developer Kit, Java开发工具包)是Sun公司提供的Java开发工具。开发JSP必须使用JDK工具包,它包含Java编译器、解释器和虚拟机(JVM),为JSP页面文件、Servlet程序提供编译和运行环境。JSP引擎使用JDK提供的编译器,将Servlet 源代码文件编译为字节码文件。Servlet引擎使用JDK提供的虚拟机(JVM)运行servlet 字节码文件。

3.1.1支持JDK的操作系统

Java语言是一种跨平台的语言,几乎所有的操作系统支持JDK工具包,如Windows2000、Windows NT、Linux、Unix等操作系统都支持JDK。

3.1.2 下载JDK

?JDK是Sun公司免费提供的Java开发工具,请读者在Sun公司网站下载。下面是

下载J2SE1.4.2版本的JDK工具包网址:

?https://www.doczj.com/doc/fe9691089.html,/products/archive/j2se/1.4.2/index.html

?下载的文件名是j2sdk-1_4_2-windows-i586.exe,大小约为43Mb。

3.1.3 Windows2000下安装和配置JDK

?下载JDK后就可以安装和配置JDK.

1.安装JDK

2. 配置环境变量

安装完JDK后,需要配置环境变量。配置环境变量目的有三个:第一,让操作系统自动查找编译器、解释器所在的路径;第二,设置程序编译和执行时需要的类路径;第三,Tomcat 服务器安装时需要知道虚拟机所在的路径。

3.2 安装和配置WEB服务器

WEB服务器是JSP网页运行的不可缺少的支撑平台,它的主要功能是对客户的请求进行处理和响应.WEB服务器有多种,本书选用的WEB服务器是Tomcat5.0.28

3.2.1 下载Tomcat

Tomcat服务器是Sun公司在JSWDK(JavaServer Web Development Kit)的基础上发展而来的一个优秀的Web服务器,它是由JavaSoft和Apache开发团队共同开发的产品.Tomcat服务器自带JSP引擎和Servlet引擎.读者可以下载版本号是5.0.28的Tomcat。下载网址是:

https://www.doczj.com/doc/fe9691089.html,/dist/jakarta/tomcat-5/v5.0.28/bin/。

3.2.2 Windows2000下安装Tomcat

下载完Tomcat后就可以安装Tomcat.安装Tomcat时,系统会自动安装Jsp引擎和Servlet引擎.

安装完Tomcat后,下面测试Tomcat是否安装成功。打开IE浏览器,在地址栏内输入‖http://localhost:8080‖或者输入‖http://127.0.0.1:8080‖。其中,‖localhost‖或‖127.0.0.1‖表示本地主机,‖8080‖表示访问的Tomcat服务器的端口号,‖http://localhost:8080‖表示通过8080端口号访问本地主机上的Tomcat 服务器。如果显示如图3-20所示的页面,表示Tomcat安装成功。否则需要重新安装。3.2.3 Tomcat的目录结构

?在编写JSP页面前,首先了解Tomcat的目录结构和作用。Tomcat的目录结构如

表3-1所示。(略)

1.注意\common、\server、\shared三个目录的区别

?\common目录下的文件可以被Tomcat服务器系统程序和所有JSP页面程序访问。

?\server目录下的文件只能被Tomcat服务器系统程序访问。

?\shared目录下的文件只能被JSP页面程序访问

2.Tomcat默认web服务目录

?Tomcat服务器的默认web服务目录是:\Tomcat 5.0\webapps\ROOT。通常将

JSP页面程序保存在该目录下。用记事本编辑一页面程序example.jsp,代码如

下:

<%

out.print("I am example program !") ;

%>

?将example.jsp程序拷贝到 \Tomcat 5.0\webapps\ROOT目录下,在浏览器

地址栏输入以下网址:http://localhost:8080/example.jsp ,运行结果如

图3-21所示。

3.建立自已的web目录

?开发人员可以将JSP页面程序部署在Tomcat服务器的默认web目录下,也可以

部署在自已创建的web目录下。下面是创建web目录的步骤:

1).在服务器上创建自已的目录

?如,创建一目录: E:\test\10

2).配置web目录

?用记事本打开 \Tomcat 5.0\conf目录下的文件server.xml, 在该文件末尾,

有一标识符― ―,在该标识符前面添加以下语句:

该语句的作用是将目录 "e:/test/10" 设置为web目录,将该目录下JSP页面程序

的执行路径设置为 "/10" 。属性docBase的值为"e:/test/10" 指定web目录的物理

路径,属性path的值为‖/10‖,它指定执行"e:/test/10"目录下JSP页面程序时的

路径(可自行设定)。

现在,建立了自已的web目录 "e:/test/10" ,并修改和保存了server.xml文件。将example.jsp页面程序拷贝到"e:/test/10"目录下面,重新启动Tomcat服务,最后,在浏览器地址栏输入以下网址:http://localhost:8080/10/example.jsp,运

行结果如图3-22所示。

3.2.4 配置Tomcat

在默认情况下,Tomcat服务器的服务端口号是‖8080‖,默认web服务目录是‖\Tomcat 5.0\webapps\ROOT‖。在实际应用中,有时需要更改这两个配置:一个

是改变服务端口号,一个是改变Web默认服务目录.

1.修改服务端口号

假设希望将服务器端口号8080改为8090。使用记事本或其它文本编辑器打开server.xml文件,定位到94行的port=‖8080‖处,将此处修改为port=‖8090‖。

修改完毕,保存该文件,然后重启Tomcat服务器,这样Tomcat就使用8090端口提供

服务了。

?说明:本书后面全部程序均在8090端口下运行。

2.修改Tomcat默认web服务目录

?假设希望将Tomcat默认web服务目录设置在c:/jsp目录下。使用记事本或其它

文本编辑器打开server.xml文件,定位到Host name处,其语句如下:

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

?将appBase的属性值‖webapps‖改为―c:/jsp‖,修改后的语句如下:

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

然后,在‖c:/jsp目录下创建子目录‖ROOT‖,在‖ROOT‖目录下建立子目录‖WEB-INF‖ (注意,目录是区分大小写的) ,完成以上步骤后, Tomcat的默认web 服务目录已改为:‖c:\jsp\ROOT‖。将example.jsp文件拷贝到该目录下,在浏览器地址栏输入以下网址:http://localhost:8090/example.jsp ,测试新的默认web 目录。

?注意:server.xml修改后,必须重新启动Tomcat服务器,才能使修改生效。

3.2.5 创建自已的运行环境

本书中,Tomcat服务端口号统一使用‖8090‖,并创建8个web服务目录,用于保存各章的JSP页面程序。

测试web目录

⑴.用记事本写一简单程序。程序名称是ex3_1.jsp。

<%

out.print("Hello World!") ;

%>

⑵.将程序保存在web服务目录―e:/test/3‖下

⑶.在浏览器中输入―http://localhost:8090/3/ex3_1.jsp‖

3.3 JSP页面执行流程

?一个JSP页面有多个客户访问,下面是第一个客户访问JSP页面时,JSP页面的

执行过程。

1.客户通过浏览器向服务器端的JSP页面发送请求

2.JSP引擎检查JSP文件对应的servlet源代码是否存在,若不存在转向第4步,否则执行下一步

3.JSP引擎检查JSP页面是否修改,若未修改,转向第5步,否则执行下一步。

4.JSP引擎将JSP页面文件转译为servlet源代码(相应的.java代码)

5.JSP引擎将servlet源代码编译为相应的字节码(.class代码)

6.JSP引擎加载字节码到内存

7.字节码处理客户请求,并将结果返回给客户。

下面是JSP页面的执行流程如图3-24所示:

?在不修改JSP页面的情况下,除了第一个客户访问JSP页面需要经过以上几个步骤

外,以后访问该JSP页面的客户请求,直接被发送给JSP对应的字节码程序处理,并将处理结果返回给客户。在这种情况下,JSP页面既不需转译也不需编译,JSP

页面执行效率非常高。

?注意:要使修改后的JSP页面有效,必须重新启动服务器,以便重新加载修改后的

JSP页面。

以3.2.5节的ex3_1.jsp文件为例,说明JSP页面转译和编译后文件的保存目录和JSP页面对应Servlet源代码形式。

我们知道,Ex3_1.jsp保存在―e:/test/3‖目录下,经过JSP引擎转译后的servlet 源代码和编译后的字节码文件分别是ex3_005f1_jsp.java和ex3_005f1_jsp.class,它们由服务器自动部署在\Tomcat 5.0\work\Catalina\localhost\3\org\apache\jsp目录下。

本章小结

本章首先介绍了JDK开发包的安装和配置,随后介绍了Tomcat服务器的安装和配置,接着介绍了web默认目录和新建web服务目录的步骤,最后介绍了JSP页面执行流程。为后面的学习打下了基础。

心得体会

(1)JSP的配置环境比较复杂,安装Tomcat服务器时选择JVM路径要小心,有时候会默认在..\jre的目录下,这样会导致以后的调试不成功。应该改成JDK的目录下,例如:C:\j2sdk1.4.2

(2)设置server.xml后,必须重新启动Tomcat服务器才能生效。

(3)Java语言是区分大小写的,刚上手时要注意。

第四章JSP页面组成

4.1 Java程序片

一般来说,使用java程序片实现逻辑计算。Java程序片有三种形式:实体定义、表达式和java代码块。使用实体前,首先要定义实体。下面是java程序片的定义和使用的语法格式。

实体定义

1. 实体定义包括:变量定义、方法定义、类定义。

⑴.变量定义

可以在‖<%!‖ 和‖%>‖标记符之间定义变量,在这种标记符之间定义的变量,通过JSP引擎转译为java文件时,成为某个类的成员变量,即全局变量。变量的类型可以是java语言允许的任何数据类型。这些变量在所定义的JSP页面内有效,即在本JSP页面中,任何java程序片中都可以使用这些变量。

例如:

<%!

int x, y=120,z;

String str=‖我是中国人‖;

Date date;

%>

在‖<%!‖ 和‖%>‖标记符之间定义了5个变量,这5个变量都是全局变量。

(2).方法定义

在‖<%!‖ 和‖%>‖标记符之间定义方法。这些方法在所定义的JSP页面内有效,即在本JSP页面内,任何java程序片都可以调用这些方法。例如,定义一个方法,求n!.

<%!

long jicheng(int n) {

long zhi=1;

for (int i=1;i<=n;i++) zhi=zhi*i;

return zhi ;

}

%>

(3).类定义

在‖<%!‖ 和‖%>‖标记符之间定义类。这些类在所定义的JSP页面内有效,即在本JSP 页面内,任何java程序片都可以使用这些类创建对象。例如,定义一个圆类,求圆的面积和周长.

<%!

public class Circle {

double r;

Circle(double r){

this.r=r;

}

double area(){

return Math.PI*r*r;

}

double zhou(){

return Math.PI*2*r;

}

}

%>

2.表达式

可以在‖<%=‖ 和‖%>‖标记符之间插入一个表达式,这个表达式必须能计算出数据值。(注意:‖<%=‖是一个完整的符号,‖<%‖ 和‖=‖不能有空格)。表达式的值由服务器负责计算,并将计算结果以字符串形式发送到客户端显示。例如:求x=a+b+c的值。<%!

int a=30;

int b=40;

int c=50;

%>

<%= a+b+c %>

表达式―<%= a+b+c %> ―的作用,相当于先计算‖a+b+c‖的值,然后把结果输出到客户端。

3. Java代码块

可以在‖<%‖和‖%>‖标记符之间包含多个java语句,构成java代码块。一个JSP 页面可以有许多java代码块,JSP引擎按顺序执行这些java代码块。在java代码块中定义的变量通过JSP引擎转译为java文件时,这些变量成为某个方法的变量,即局部变量。局部变量在本JSP页面内的所有java代码块中起作用(JSP页面转译为servlet源代码时,JSP页面内的所有java代码块合并到同一方法中)。

[例子 4.1] 计算并输出表达式的值。程序ex4_1.jsp代码如下:

<%!

int d; //定义全局变量d

%>

[例子 4.2] 统计访问某页面的客户人数

问题分析

由于多个客户点击同一页面文件,只要在JSP页面程序中定义一个全局变量,作为统计客户的计数器,每当页面被点击执行时,使该变量加1。然后输出该计数器的值.

程序结构

程序名:ex4_2.jsp

程序算法

1.定义全局变量count并初始化.即count=0

2.页面每次被点击时使变量count加1,即count++

3.把计数器的值输出到客户端,即 <%=count %>

程序代码

<%@ page contentType="text/html;charset=GB2312"%>

<%!

int count=0;

%>

<%

count++;

%>

您是第<%=count %>个访问本站的客户。

4.1.2 求N!

[例子 4.3] 求10!,并输出该值。

问题分析

首先定义一个求N!的方法,然后通过java代码调用该方法计算10!的值,并输出到客户端

程序结构

程序名:ex4_3.jsp

程序算法:

1.定义方法long jiecheng(int n),该方法求n!。

2.调用方法jiecheng(10),计算10!的值。

3.通过表达式输出10!的值,即 <%= jiecheng(10)%> 。

程序代码:

<%@ page contentType="text/html; charset=GB2312" %>

<%!

long jiecheng(int n)

{

long zhi=1;

for (int i=1;i<=n;i++)

zhi=zhi*i;

return zhi ;

}

%>

10!的阶乘是:<%=jiecheng(10) %>

4.1.3 计算圆的面积和周长

[例子4.4] 由客户提供圆的半径,计算圆的面积和周长

问题分析:

可以先定义一个圆类,该类包含计算面积和周长的方法。通过表单获得用户输入的圆的半径r,然后以半径r为参数创建一个圆对象,计算圆的面积和周长,最后输出计算结果。程序结构

程序名:ex4_4.jsp

程序算法:

1.定义圆类Circle。

2.使用表单创建用户输入界面,获得圆的半径r

3.调用构造方法创建一个圆,计算圆的面积和周长

4.输出圆的面积和周长

4.1.4 求1到N的连续和

[例子4.5]求1到100的连续和,并输出到客户端。

问题分析

可以先定义一个求和的方法,然后调用该方法计算结果,并将结果输出到客户端。

程序结构

程序名:ex4_5.jsp

程序算法

1.定义求和方法: long continueSum(int n)

2.调用求和的方法计算: sum=continueSum(100)

3.输出 sum

4.1.5 输出表达式

[例子4.6] 计算并输出表达式

程序结构:

程序名:ex4_6.jsp

程序代码:

<%@ page contentType="text/html;charset=GB2312" %>

3的平方是:

<%=Math.pow(3,2)%>

5的平方根等于

<%= Math.sqrt(5) %>

4.2 JSP标签

一般使用JSP标签控制页面属性。JSP标签分为JSP注释、指令标签和动作标签三类。指令标签有page、include和taglib。动作标签主要有include、param、forward、plugin、useBean。

语法格式

1.JSP注释

注释本身不产生语句功能,只用来增强JSP文件的可读性,便于用户维护JSP文件。JSP 注释分两种:HTML注释和JSP注释。

(1)HTML注释

JSP页面使用这种注释时,客户端通过浏览器查看JSP源文件时,能够看到HTML注释文字。其语法格式是:

(2)JSP注释

使用这种注释时, JSP引擎编译该页面时会忽略JSP注释。下面是其语法格式:

<%-- 要注释的内容、文字、说明写在这里 --% >

2. page指令标签

page指令主要用来定义整个JSP页面的各种属性。一个JSP页面可以包含多个page 指令,指令中,除了import属性外,每个属性只能定义一次,否则JSP页面编译将出现错误。下面是page指令格式:

<%@ page

[language=‖java‖]

[extends=‖classname‖]

[import=‖packname/classname‖]

[session=‖true/false]

[buffer=‖none/sizekb]

[autoFlush=‖true/false‖]

[isThreadeSafe=‖true/false‖]

[info=‖info_text‖]

[errorPage=‖error_url‖]

[isErrorPage=‖true/false‖]

[contentType=‖MIME_type‖]

[pageEncoding=‖ ―]

%>

本标签由多个属性名=‖属性值‖对构成,通过这种方式设置页面的属性。

?language 属性

–用来设置JSP网页使用的程序语法,目前JSP只支持Java语言.

?import 属性

–加载非默认的Java包或类。例如JavaBean等

?contentType 属性

–设置JSP网页的文件格式与编码所使用的字符集。

?session 属性

–值可以为true或false,用来设置JSP网页是否使用内建的session 对象与功能,默认为true.

?buffer 属性

–设置JSP网页使用的缓冲区大小,此属性的默认值为8kb,设置时可以是auto,或大于8kb的值。

?autoFlush

–值为true或false,表示是否在缓冲区中的存储窨已满时,自动将信息输出至客户端,默认值为true.

?info 属性

–设置一个代表目前这个JSP网页信息,设置为一字符串,可以程序中使用getServletInfo()方法来取得。

?extends 属性

–设置JSP程序解释成servlet后所继承的父类,一般不需要设置。

?errorPage

–可以在每个JSP网页中设置errorPage=―error.jsp― ,表示有异常错误时,错误信息由error.jsp来显示,通常为相对路径。

?isErrorPage

–设置网页是否可显示其他网页所产生的异常信息,默认值为false。例如:在error.jsp页面中要设置其属性为true,表示本页为显示异常错误信

息的页面。

3. include指令标签

?该指令标签的语法格式如下:

<%@ include file=‖文件名字‖ %>

?该指令标签的作用是在该标签的位置处,静态插入一个文件。所谓静态插入指用被插

入的文件内容代替该指令标签与当前JSP文件合并成新的JSP页面后,再由JSP引擎转译为java文件。

?被插入的文件要求满足以下条件:

(1) 被插入的文件必须与当前JSP页面在同一WEB服务目录下。

(2) 被插入的文件与当前JSP页面合并后的JSP页面必须符合JSP语法规则。

?例如, 下面的程序是实现相同功能的两种程序结构:第一种程序结构中,使用了

include指令标签,即在example4_1.jsp页面中静态插入一个Computer.jsp 文件。第二种程序结构中(example4_1_1.jsp),没有使用include指令标签。

下面是实现这两种程序结构的代码。

第一种程序结构

本程序由两个文件组成,它们是example4_1.jsp页面和Computer.jsp页面。

第二种程序结构

本程序直接将example4_1.jsp页面内容和Computer.jsp页面内容合并在一起,构成页面example4_1_1.jsp。

5. include动作标签

include动作标签的语法格式如下:

或者

该标签的作用是当前JSP页面动态包含一个文件,即将当前JSP页面、被包含的文件各自独立转译和编译为字节码文件。当前JSP页面执行到该标签处时,才加载执行被包含文件的字节码。

6. param动作标签

? param动作标签的语法格式是:

?该标签经常与jsp:incluede、jsp:forward、jsp:plugin标签一起使用, 将

param标签中的变量值传递给动态加载的文件。

7. forward动作标签

forward动作标签的语法格式:

或者

该指令的作用是:当前页面执行到该指令处后转向其它JSP页面执行。

8. plugin动作标签

plugin动作标签的语法格式:

提示信息…

该动作标签指示JSP页面加载 Java plugin 插件,该插件由客户负责下载,并使用该插件运行java applet小应用程序。

9.useBean动作标签

该标签创建并使用一个javaBean,在第8章介绍。

4.2.1 计算三角形面积并对程序进行注释

[例子4.7]由用户输入三条边的长度,判断这三条边能否构成一个三角形,若能构成三角形,则输出三角形的面积和周长。

问题分析:

通过表单获得三角形三条边的值,然后根据三角形面积计算公式计算面积,最后输出计算结果。

程序结构:

程序名:ex4_7.jsp。

程序算法:

1.创建表单。表单中包含三个文本框,从三个文本框获取三条边的长度。

2.判断三条边能否构成一个三角形,如果不能构成三角形,则输出信息‖不能构成三角形‖。

3.如果能构成一个三角形,则计算三角形的面积并输出。

4.2.2 在jsp页面中静态包含文件

[例子4.8]计算某数据的平方根

问题分析:

在一个页面中使用指令标签‖include‖,静态包含另一页面文件。

程序结构:

程序包含两个文件。example4_1.jsp页面静态包含Computer.jsp页面。

程序算法

example4_1.jsp :

使用‖include‖指令标签静态包含页面Computer.jsp

Computer.jsp:

1.创建表单,该表单包含一个文本框,从文本框获取正整数。

2.计算整数的平方根

3.输出平方根

4.2.3 动态加载页面并传递数据

[例子4.9] 求1到300的连续和

问题分析:

本程序由两个页面构成,由主页面动态加载次页面,并传递参数300给次页面,由次页面实现求和功能。

程序结构:

页面ex4_9.jsp动态加载页面addPage.jsp,并将数据300传递给变量computer。程序算法

ex4_9.jsp:

1.动态加载页面addPage.jsp。

2.给参数Computer传递数据300。

addPage.jsp:

1.获得参数Computer的值

2.求1到computer的和

3.输出数据

4.2.4 重定向页面并传递数据

[例子4.10]输出随机数(0~1)

问题分析:

本程序由两个页面构成,由一个主页面产生随机数并传递给另一重定向页面,重定向页面获得随机数并输出此数据。

程序结构:

主页面ex4_10.jsp重定向到redirect.jsp页面。

程序算法:

ex4_10.jsp:

1. 产生随机数number,

2. 转向页面redirect.jsp

redirect.jsp:

1.获得number值

2.输出number的值

4.3 HTML标记

一般使用HTML标签创建用户界面,实现输入数据和展示数据。HTML标记包括表单和组件。按照组件的不同作用,把组件分为三种类型:第一种类型组件是控件,这种控件的作用是提交或重置表单数据。第二种类型组件是数据输入组件。第三种类型组件是格式化组件。控件有两种:提交表单数据的控件和重置表单数据的控件。数据输入组件有:文本框、密码框、复选框、单选框、列表框、文本区。格式化组件有:LABEL组件和和表格。LABEL组件主要起说明作用,表格主要用于数据展示格式化。

1.表单

表单本身是一个框架,它把提交控件、数据输入组件和格式化组件组合在一起,构成用户输入界面,其作用是利用提交控件,将表单中的数据(数据输入组件接受数据)提交给服务器。表单的基本语法如下:

[数据输入组件(1至多个组件)][ 格式化组件]

提交控件 [重置控件]

2.文本框

一般来说,用户通过文本框输入各种数据.文本框的一般语法格式是:

3.密码框

密码框是一种特殊的文本框,输入的信息用‖*‖回显,防止他人偷看口令。密码框的一般语法格式是:

4.复选框

当一个题目中可以选择多个答案时,就使用复选框。复选框的一般语法格式:

5.单选框

当一个题目中的答案只能多选一时,就使用单选框。单选框的一般语法格式:

6.列表框

下拉式列表和滚动式列表框通过

…….

7.文本区

该组件在表单中指定一个能输入多行文本的文本区。其语法格式是:

8.表格

表格经常用于对显示信息和输入信息的格式进行排版。下面是表格的基本语法:

……

……

数据11 数据1n

10.提交、重置数据的控件

当用户按下该控件后,表单所包含的数据被提交到服务器。下面是提交控件的语法:

4.3.1 用选择框提交信息

[例子4.12]创建一用户界面,提供你的性别信息和爱好信息.

4.3.3用列表框提交信息

[例子4.14]求1到n的连续和、平方和、立方和。其中n的取值有10,20,30,40,50,100。

本章小结

JSP页面由三类元素组成,它们是Java程序片、JSP标签和HTML标记。JSP标签控制JSP页面属性;HTML标记创建用户界面;java程序片实现逻辑计算和逻辑处理。

JSP技术简介(外文翻译)

JSP技术概述 一、JSP的好处 二、JSP页面最终会转换成servler。因而,从根本上,JSP页面能够执 行的任何任务都可以用servler来完成。然而,这种底层的等同性并不意味着servler和JSP页面对于所有的情况都等同适用。问题不在于技术的能力,而是二者在便利性、生产率和可维护性上的不同。毕竟,在特定平台上能够用Java编程语言完成的事情,同样可以用汇编语言来完成,但是选择哪种语言依旧十分重要。 和单独使用servler相比,JSP提供下述好处: 三、λJSP中HTML的编写与维护更为简单。JSP中可以使用常规的HTML: 没有额外的反斜杠,没有额外的双引号,也没有暗含的Java语法。 四、λ能够使用标准的网站开发工具。即使对那些对JSP一无所知的 HTML工具,我们也可以使用,因为它们会忽略JSP标签(JSP tags)。 五、λ可以对开发团队进行划分。Java程序员可以致力于动态代码。Web 开发人员可以将经理集中在表示层(presentation layer)上。对于大型的项目,这种划分极为重要。依据开发团队的大小,及项目的复杂程度,可以对静态HTML和动态内容进行弱分离(weaker separation)和强分离(stronger separation)。 六、在此,这个讨论并不是让您停止使用servlets,只使用JSP。几乎 所有的项目都会同时用到这两种技术。针对项目中的某些请求,您可能会在MVC构架下组合使用这两项技术。我们总是希望用适当的工具完成相对应的工作,仅仅是servlet并不能填满您的工具箱。 二、JSP相对于竞争技术的优势 许多年前,Marty受到邀请,参加一个有关软件技术的小型(20个人)研讨会.做在Marty旁边的人是James Gosling--- Java编程语言的发明者。 隔几个位置,是来自华盛顿一家大型软件公司的高级经理。在讨论过程中,研讨会的主席提出了Jini的议题,这在当时是一项新的Java技术.主席向该经理询问他的想法.他继续说,他们会持续关注这项技术,如果这

JSP期末考试题复习题

针对以下题目请选择正确的答案(每道题目有一个或多哥正确的答案)。每一道题目,所有答案都选对,则该题加分,所选答案错误或不能选出所有正确答案,则该题不得分。 1)在JSP中,要定义一个方法,需要用到以下()元素。(选择一项) a) <%= %> b) <% %> c) <%! %> d) <%@ %> 2)JSP页面经过编译之后,将创建一个()。(选择一项) a) applet b) servlet c) application d) exe文件 3)当JSP页面执行自定义标签,遇到结束标签时将调用()方法执行处理。(选择一项) a) doStartTag() b) doEndTag() c) doInitBody() d) doAfterBody() 4) 在J2EE中,test.jsp文件中有如下一行代码:(选择一项) 要使user对象中一直存在于对话中,直至其终止或被删除为止,下划线中应填入()。 a) page b) request c) session d) application 5) 在J2EE中,以下不是JSP隐式对象的是()。(选择一项) a) pageContext b) context c) application d) out 6) Servlet中,HttpServletResponse的()方法用来把一个Http请求重定向到另外的URL。(选择一项) a) sendURL() b) redirectURL() c) sendRedirect() d) redirectResponse() 7) 在JSP中,page指令的()属性用来引入需要的包或类。(选择一项) a) extends b) import c) languge d) contentType 8) 在Servlet过滤器的生命周期方法中,每当传递请求或响应时,web容器会调用()方法。(选择一项) a) init b) service c) doFilter d) destroy 9) 在JSP中,只有一行代码:<%=’A’+’B’%>,运行将输出()。(选择一项) a) A+B b) AB c) 131 d) 错误信息,因为表达式是错误的 10)给定一个Servlet的代码片段如下: Public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{ ______ out.println(“hi kitty!”); out.close(); } 运行次Servlet时输出如下: hi kitty! 则应在此Servle t下划线处填充如下代码。(选项一项) a) PrintWriter out = response.getWriter(); b) PrintWriter out = request.getWriter(); c) OutputStream out = response.getOutputStream(); d) OutputStream out = request.getWriter(); 11)给定如下JSP代码,假定在浏览器中输入URL:http://localhost:8080/web/jsp1.jsp,可以调用这个JSP,那么这个

JSP复习资料

JSP实用教材复习资料 第一章 1.为进行JSP开发,安装JDK后应该进行那些设置? 答:设置path环境变量为:java_home\bin; Classpath为:java_home\jre\lib\rt.jar;.; Java_home为:D:\java 2.运行startup.bat文件启动Tomcat服务器的好处是什么? 答:使用startup.bat启动Tomcat服务,以确保Tomact服务器使用的JDK是java_home设置的JDK。 使用startup.bat启动Tomcat服务,会占用一个MS-DOS窗口,如果关闭窗口将关闭Tomcat 服务。 3.Hello.jsp和hello.jsp是否是相同的jsp文件名? 答:不是 4.请在C:\下建立一个名字为Game的目录,并将该目录设置为一个Web服务器目录,然后编写一个简单的JSP页面,保存到该目录中,让用户使用虚拟目录moon访问该JSP页面。答:作为一个实验题。 修改Tomcat服务器安装目录下conf目录中的server.xml文件来设置新的Web服务目录。在前加入: 经这样设置,就可以将我们实际运行的jsp文件如A.jsp实际放在C:Game中,而在 流览其中使用moon目录: 如:http://127.0.0.1:8090/moon/A.jsp 5.怎样访问Web服务器子目录中的JSP页面? 答:根目录: D:\Tomcat_home\webapps下 webapps下的任何一个子目录都可以作为一个Web服务目录,如将jsp页面如A.jsp放在jsp-examples中; 则访问方式为: http://127.0.0.1:8090/jsp-examples/A.jsp 或者将jsp页面A.jsp放在webapps\Root\目录中。 访问地址为:http://127.0.0.1:8090/A.jsp 6.如果想修改Tomcat服务器的端口号,应该修改那个文件?能否将端口号修改为80,条件是什么? 答:修改Tomcat服务器的conf目录下的主配置文件server.xml可以更改端口号. 关于改变端口号:可以将同一文件中的:

jsp问答题复习

1、什么是JSP的预编译特征? 答:JSP 页面在被服务器执行前,都是已经被编译好的,并且通常只进行一次编译,即在JSP 页面被第一次请求时进行编译,在后续的请求中如果JSP页面没有被修改过,服务器只需要直接调用这些已经被编译好的代码,这大大提高了访问速度。 2、开发JSP 程序可采用哪几种开发模式?分别介绍他们的优缺点。 答:①单纯的JSP 页面编程 优点:容易实现。通过应用JSP中的脚本标识,可直接在JSP页面中实现各种功能。 缺点:将大部分的Java代码与HTML代码混淆在一起,程序结构混乱,维护调试不便。 ②JSP+JavaBean 编程 优点:网站的业务逻辑和显示页面进行分离,程序结构比较清晰。 缺点:将流程控制放到JSP 中,JSP 不能单纯作为显示功能。 ③JSP+JavaBean+Servlet 编程 优点:层次关系明显、组件分工明确。由Servlet来执行业务逻辑并负责程序的流程控制,JavaBean组件实现业务逻辑,充当着模型的角色,JSP用于页面的显示。 缺点:虽然遵循了MVC设计模式,但需要设计MVC各对象之间的数据交换格式与方法,需要花费更多的时间在系统设计上;对开发人员能力要求较高,不适合JSP 初学者。 ④MVC模式: 将业务逻辑代码与外观呈现分离,能更容易地根据需求的改变来改进程序。 3、JSP 页面由哪些元素组成? 答:JSP页面元素包括:JSP中的指令标识、HTML标记语言、嵌入的Java代码片段、JSP表达式(、动作标识、JSP脚本标识、JSP注释)等 4、有几种方法可实现在页面中来包含文件?如何实现?它们有什么区别? 答:动作标识与include指令都可用来包含文件,实现格式分别为: <%@ include file="文件的绝对路径或相对路径" %> 二者的区别: (1)、属性: include指令通过file属性来指定被包含的页面,include指令将file属性值看作一个实际存在的文件的路径,所以该属性不支持任何表达式。若在file属性值中应用JSP表达式,则会抛出异常。 动作标识通过page属性来指定被包含的页面,该属性支持JSP表达式。(2)、处理方式: 使用include指令被包含的文件,它的内容会原封不动地插入到包含页中使用该指令的位置,然后JSP编译器再对这个合成的文件进行翻译。所以在一个JSP页面中使用include指令来包含另外一个JSP页面,最终编译后的文件只有一个。 使用动作标识包含文件时,当该标识被执行时,程序会将请求转发到(注意是转发,而不是请求重定向)被包含的页面,并将执行结果输出到浏览器中,然后返回包含页继续执行后面的代码。因为服务器执行的是两个文件,所以JSP编译器会分别对这两个文件进行编译。 (3)、包含方式: 使用include指令包含文件,最终服务器执行的是将两个文件合成后由JSP编译器编译成的一个Class文件,所以被包含文件的内容应是固定不变的,若改变了被包含的文件,则主文件的代码就发生了改变,因此服务器会重新编译主文件。include指令的这种包含

JSP实用教程第三版课后复习资料

《JSP实用教程(第三版)》课后答案 第1章 JSP简介 1.安装Tomcat引擎的计算机需要事先安装JDK吗? 答:需要。 2.怎样启动和关闭Tomcat服务器? 答:bin目录下使用startup.bat启动Tomcat服务器。bin目录下使用shutdown.bat 关闭Tomcat服务器。 3. Boy.jsp和boy.jsp是否是相同的JSP文件名字? 答:不是 4. 请在D:\下建立一个名字为water的目录,并将该目录设置成一个Web服务目录,然后编写一个简单JSP页面保存到该目录中,让用户使用虚拟目录fish 来访问该JSP页面。 答:设置方法: ①建立D:\ water目录; ②修改server.xml文件,在上一行添加: ③使用fish /example1_1.jsp访问example1_1.jsp页面. 5. 假设Dalian是一个Web服务目录,其虚拟目录为moon。A.jsp保存在Dalian 的子目录sea中。那么在Tomcat服务器(端口号8080)所在计算机的浏览器键入下列哪种方式是访问A.jsp的正确方式? A. B. C. D. 答:D 6.如果想修改Tomcat服务器的端口号,应当修改哪个文件?能否将端口号修改为80? 答:修改Tomcat服务器的conf目录下的主配置文件server.xml可以更改端口号. 若Tomcat服务器上没有其它占有80端口号的程序,可以将其修改为80,否则不能。

JSP复习重点

动态网页概念: ◆动态的核心:提供响应的信息。 ◆动态网页技术:CGI、ASP、PHP、JSP。 ◆安装配置JSP运行环境。JSP服务器:操作系统+JDK+JSP引擎 本教学采用: ◆JDK1.6+Tomcat6 + Dreamweaver 处理动态JSP代码构造静态网页 ◆JSP服务器配置 四个环境变量:ClassPath、JAVA_HOME、TOMCAT_HOME、PATH ◆运行JSP程序 工程文件:存放在工作空间,无法运行 工程文件要发布到Tomcat服务器才能运行,如发布到“Tomcat\webapps\workdir”目录下,则: 浏览器地址栏输入:http://localhost:8080/workdir/你的JSP文件名 通用HTML HTML文档的基本结构: HTML文件开始 文件头内容 文件体内容 要求:能正确区分动态代码和静态代码。 JAVA语言基础 ◆JAVA程序的编译和运行: Dos方式下编译:javac java文件名.java,编译完成后生成“文件名.class”这个文件。注意区分大小写。 JSP语法 ◆JSP脚本: 声明:变量、方法、类 <%! %> 注意:在<%! … … %>中声明的变量、方法、类,在整个jsp文件内都有效。例如计数器的用法。 JAVA程序片:<% %> JAVA表达式:<%= %> ◆HTML注释:这种注释发送到客户端,不直接显示;但在源代码中可 以查看到。 ◆JSP注释 <%--注释内容--%>:这种注释不发送到客户端,不直接显示;而且在源 代码中也查看不到。 ◆编译指令page:用于定义JSP文件中的全局属性。可以放置在JSP页面任何位置,

JSP复习资料

JSP复习资料 一、填空: 1、 Tomcat服务器的默认端口是8080 。 2、 jsp主要内置对象有: application 、 config 、 exception 、out 、 page 、 pageContext 、 request 、response 、 session 。 3、application (application,session)对象是所有客户共同拥有,而session(application,session)对象则是每个客户专用的。 4、 JDBC的主要任务是:建立与数据库的连接、向数据库发起查询请求、处理数据库返回结果 5、一个Bean由三部分组成实现java,io.serializable接口、提供地参数的构造方法、提供getter()和setter()方法访问它的属性。 6、 Servlet的生命周期分三个时期:初使化、服务、销毁。 7、 JSP开发网站的两种模式分为JSP+JavaBean 和JSP+JavaBean+Servlet 8、对于同一用户,要想在不同的页面之间共享数据,可有以下几种方法:把数据保存的session 中, 通过Cookie ,通过隐含的表单把数据提交到下一页面,通过ServletContext对象,通过Application 对象,通过文件系统或数据库。 9、运行servlet需要在___ web.xml注册。 10、JSP是Html和Java 的结合。 11、JSP是运行在Web服务器上的JSP语言。* 12、Web服务器是一个servlet容器,它的作用是发布网页。 13、JSP的内部对象可以直接使用,它是由servlet容器创建的。 14、获取表单

提交的参数,通常使用的内部对象是request,常用的方法是getParameter。 15、JavaBena是一个java 类,它必须有一个public且无参数方法。 16、在JSP中使用JavaBean的标签是 ,其中id的用途是实例化一个Bean对象。 17、加载数据库驱动的方法是Class.forName() ,连接数据源的方法是DriverManager.getConnection() 。 18、Statement对象的两个常用方法是executeUpdate()和executeQuery()。 19、JSP的全称是Java Server Pages,是由 Sun公司倡导、许多公司参与一起建立的一种动态(动态、静态)网页技术标准。 20、在传统的网页HTML文件(*.htm,*.html)中加入Java程序段(Scriptlet)和 JSP标记(tag) ,就构成了JSP网页。 21、JSP网页文件的扩展名是.jsp 。 22、所有的JSP程序操作是在服务器端执行。 23、三种常用的动态网页技术是ASP、PHP 、JSP。 24、Tomcat脚本Startup用于启动服务器;Shutdown用于关闭服务器。 25、Java中的Exception是当程序中出现不同寻常的情况时生成的一个对象。 26、解决汉字问题最简单的方法就是在文件头加入<%@page contentType ="text/html;charset=GBK"%>。

JSP期末考试复习资料

1-2 JSP中可重复使用的组件有哪些? JavaBean/JSP标准标签/自定义标签 1-3 什么是JSP的预编译特征? 答:JSP页面在被服务器执行前,都是已经被编译好的,并且通常只进行一次编译,即在JSP 页面被第一次请求时进行编译,在后续的请求中如果JSP页面没有被修改过,服务器只需要直接调用这些已经被编译好的代码,这大大提高了访问速度。 1-8 开发JSP程序可采用哪几种开发模式?分别介绍他们的优缺点。 答:第一种:单纯的JSP页面编程 优点是容易实现;缺点是程序结构混乱,维护不便。 第二种:JSP+JavaBean编程 优点是结构比较清晰;缺点是将流程控制放到JSP中,JSP不能单纯作为显示功能 第三种:JSP+JavaBean+Servlet编程 优点是层次关系明显、组件分工明确;缺点是对开发人员能力要求较高,不适合JSP初学者。 2-2 什么是成员变量和局部变量?他们的区别是什么 答:成员变量是在类体中变量定义部分所声明的变量; 局部变量是在方法体重声明的变量和方法的参数 两者的区别在于有效范围不同,成员变量在整个 类内都有效,而局部变量只在定义他的成员方法 内才有效。 2-3 如何创建、使用并销毁对象? 答:创建对象的方法: 类名对象名; 对象名 = new 构造方法名([参数列表]); 或者: 类名对象名 = new 构造方法名([参数列表]); 使用对象的方法:可以通过对象来引用其成员变量,并改变成员变量的值,而且还可以通过对象来调用其成员方法。通过使用运算符“.”实现对成员变量的访问和成员方法的调用。 销毁对象的操作由Java提供的垃圾回收机制自动完成。不需要手工完成销毁对象操作。或者调用对象的finalize()方法。 3-1 JSP页面由哪些元素组成? <%@ page language="java" contentType="text/html; charset=gb2312”%> <%@ page import="java.util.Date" %> JSP页面的基本构成

<% String today=new Date().toLocaleString(); %> 今天是:<%=today%>

jsp复习题库

JSP期中复习题库 一、单选题 【】1.request对象中读取同名复选框表单元素的值时,比较合适的方法是 A.getAttribute() B.getParameter() C.getParameters() D.getAttributes() 【】2.application对象所依赖的类或接口是 A.JspWrite B.ServletContext C.PageContext D.HttpServletContext 【】3.下面关于session的用法哪个是正确的 ) A.HttpSession session = new HttpSession(); B.String haha =(“haha”); C.(“haha”); D.session. setAttribute(“haha”); 【】4.关于说法不正确的是哪个A.URL的输出在请求时被插入到JSP页面中 B.不能含有影响整个页面的JSP内容 C.被包含文件改变后不需更改使用它的页面 | D.被包含文件更改后,需要手动地更新使用它的页面 【】5.Java关于异常处理机制的叙述哪个正确 A.catch部分捕捉到异常情况时,才会执行finally部分 B.当try区段的程序发生异常时,不一定执行catch区段的程序 C.不论程序是否发生错误及捕捉到异常情况,都会执行finally部分 D.以上都是 【】6.下面JSP动作中叙述不正确的是 A.jsp:forward动作用来把当前的JSP页面重导到另一个页面上,用户看到的地址是当前页面的地址,而内容是另一个页面的。 ! B.jsp:param动作可单独使用,用于页面间传递参数。 C.jsp:include动作和include指令是不完全一样的。 D.jsp:setProperty动作用来在一个JSP页面中设置已创建的bean的属性值。 【】7.下面哪些为构造函数的特性定义 A.在类中声明构造函数时,名称应该与类名相同 B.具有重载特性,可以建立多个相同的名称 C.使用类建立新对象时,会自动执行构造函数,因此在构造函数内设定变量的初值或进行内存分配 D.以上都是 【】8.》 【】9.下面说法不正确的是 A.JSP中的汉字字符串在服务器端用gb2312,在编译为Servlet时自动转换

《JSP程序设计(A)》期末复习资料

《JSP程序设计(A)》期末复习资料 一. 选择题 1. 关于视图下列哪一个说法是错误的()。 A. 视图是一种虚拟表 B. 视图中也存有数据 C. 视图也可由视图派生出来 D. 视图是保存在数据库中的SELECT查询 2. 用于模糊查询的匹配符是()。 A. _ B. [] C. ^ D. LIKE 3. 触发器可以创建在()中。 A. 表 B. 过程 C. 数据库 D. 函数 4. 查询毕业学校名称与“NIIT”有关的记录应该用()。 A. SELECT * FROM 学习经历WHERE 毕业学校LIKE …*NIIT*? B. SELECT * FROM 学习经历WHERE 毕业学校= …%NIIT%? C. SELECT * FROM 学习经历WHERE 毕业学校LIKE …?NIIT?? D. SELECT * FROM 学习经历WHERE 毕业学校LIKE …%NIIT%? 5. SQL语言中,条件年龄BETWEEN 15 AND 35表示年龄在15至35之间,且()。 A.包括15岁和35岁 B.不包括15岁和35岁 C.包括15岁但不包括35岁 D.包括35岁但不包括15岁 6. 数据定义语言的缩写词为()。 A.DDL B.DCL C.DML D.DBL 7. 在数据操作语言(DML)的基本功能中,不包括的是()。 A.插入新数据 B.描述数据库结构 C.修改数据 D.删除数据 8. 以下关于外键和相应的主键之间的关系,正确的是()。 A.外键并不一定要与相应的主键同名 B.外键一定要与相应的主键同名 C.外键一定要与相应的主键同名而且唯一 D.外键一定要与相应的主键同名,但并不一定唯一 9. 请选择产生粗体字的HTML 标签()。 A. B. C. D. 10. 如何制作电子邮件链接?()。 A. B. C. D.xxx@yyy 11. 在J2EE实现企业级应用开发中,()是描述标记库的XML文档。 A. TLD文件 B. DTD文件 C. WAR文件 D. EAR文件 12. 使用自定义标签时,要为JSP引擎提供有关自定义标签的相关信息,下列信息描述语句正确的是()。 A. hello com.tagdemo.HelloTag B. hello com.tagdemo.HelloTag

复习题2.jsp

流体力学复习题 第一章 复习题 一、 名词解释 1. 流体 2.粘性 3. 质点 4.不可压缩流体 5.可压缩流体 6. 理想流体 7. 实际流体 8.牛顿流体 9.流体连续性假定 二、问答题 1.液体和气体的粘性随温度的变化如何变化?为什么? 2.叙述牛顿内摩擦定理, 3.写出牛顿内摩擦定律的表达式,并说明各符号的含义。 4.分析流体粘度的影响因素是什么? 5.试述下列流体力学模型的区别: ①.可压缩流体与不可压缩流体。 6.气体粘度随温度的变化如何变化?为什么? 7. “液体是不可压缩流体,而气体是可压缩流体”,这句话对吗?为什么? 8.流体的主要物理性质有哪些? 第二章 复习题 一、 名词解释 1.静压力 2. 绝对压力 3.质量力 4.真空 5、真空度 二、问答题 1.分析作用在流体上的力有哪几类? 2.什么是等压面?等压面有什么重要特性? 3.静止流体静力学方程p=p 0+ρgh 的适用条件是什么? 4.方程式 01=??- x p f x ρ 01=??-y p f y ρ 01=??-z p f z ρ 是什么方程式?并说明它表示的意义? 5.流体静压力的基本性质有哪些?在工程中有何应用? 6.画图说明绝对压力、表压力和真空它们之间的区别和联系?并写出它们之间的关系式。(7分) 绝对压力、相对压力?相互有什么关系? 7.请写出以下两个方程的名称 方程一:Const =+Z g p ρ

方程二: Const g c g p z= + + 2 ρ 简要说明方程中各项的物理意义。 三、计算题 第二章流体静力学 1.用水银U形管测压计测量压力水管中A点的压力,如图所示。若测得 1 h=800mm,2 h=900mm,并假定大气压力为105Pa,求A点的绝对压力。 2.用U形管测压计测一容器内气体的真空和绝对压力,如图所示。U形管内工作液体为四氯化碳,其密度ρ=1594kg/m3,液面差h ?=900mm,求容器内气体的真空和绝对压力。(假定大气压力为105Pa) 3.如图所示为一U形管测压计,用来测量容器的压力:(a)如果流体A是空气,流体B是水;(b)如果流体A是空气,流体B是油(密度为830kg/m3);(c)如果流体A是水,流体B是水银。试计算被测容器的压力值。

JSP复习题

(1)下列关于WEB开发说法正确的是。 A)Web是图形化的和易于导航的 B)Web与平台无关 C)Web是分布式的 D)Web 是动态的 E)Web 是静态的 (2)下列关于Tomcat说法正确的是。 A)Tomcat是一种编程语言 B)Tomcat是一种开发工具 C)Tomcat是一种编程思想 D)Tomcat是一种编程规范 E)Tomcat是一个免费的开源的Serlvet容器 (3)下列关于HTTP协议说法正确的是。 A)HTTP是一种请求/响应式的协议 B)HTTP请求消息中Accept表示浏览器可接受的MIME类型 C)HTTP请求消息中Accept-Encoding表示浏览器能够进行解码的数据编码方式 D)HTTP请求消息中Accept-Language表示浏览器所希望的语言种类 E)HTTP请求消息中Host表示初始URL中的主机和端口。 (4)下列对于JSP说法中正确的是。 A)JSP是Sun公司推出的新一代站点开发语言 B)JSP完全解决了目前ASP、PHP的一个通病——脚本级执行 C)JSP将内容的生成和显示进行分离 D)JSP强调可重用的组件 E)JSP采用标识简化页面开发 (5)下列关于JSP编译指令说法错误的是。 A)编译指令用于从JSP发送一个信息到容器上 B)编译指令用来设置全局变量、声明类要实现的方法和输出内容的类型等 C)编译指令向客户端产生任何输出 D)编译指令所有的指令都在整个JSP页面内有效 E)编译指令元素为编译阶段提供了全局信息 (6)下面对out对象说法错误的是。 A)out对象用于输出数据 B)out对象的范围是application。 C)如果page指令选择了autoflush="true",那么当出现由于当前的操作不清空缓存而造成缓冲区溢出的情况时,这个类的所有I/O操作会自动清空缓冲区的内容。 D)out.newLine()方法用来输出一个换行符 E)out.close()方法用来关闭输出流 (7)下面关于request对象说法错误的是。

jsp复习大纲内容整理

网络编程技术复习大纲 说明: 本复习大纲基本涵盖期末考试和补考的考试范围。有疑问尽早找老师答疑(教4-418),也可通过电子邮件答疑。 编程基础复习点: 1、简单、常用的html标记。 2、熟悉JDK,Tomcat的安装及JSP程序调试过程中常见问题。 3、了解Java基础知识。尤其注意集合类的应用中两个集合类优点、适用范 包的概念与用途: 概念:包是java提供的一种区别于类的名字空间的机制,是类的组织方式,是一组相关类和接口的集合,它提供了访问权限与命名的管理机制 主要有一下三个用途: ①将功能相近的类放在同一个包里,可以方便查找与使用; ②由于不同的包中可以存在同名类,所以包在一定程度上可以避免命名冲 突; ③在Java中,某些访问权限是以包围单位的。 引入包;import来应用,包名与类名用“.”分隔,*表示包中的所有类。 异常处理语句: Try....catch.....:try用来监视这段代码运行过程中是否发生异常,若发生则产生异常对象并抛出,catch用于捕获异常并且抛出。 Finally:不管捕获的异常出不出现,都会执行finally代码块; Throw:程序发生错误自行抛出异常时,可以使用throw关键字,并生成指定的异常对象。

Throws:如果一个方法可能会出现异常但是没有能力处理这个异常,可以再方法声明处用throws语句来抛出异常。一个方法可能出现多种异常,throws 子语句允许声明抛出多个异常。 4、构成JSP的7要素( HTML标记、JSP指令标记、JSP动作标记、声明与标识、脚本程序、表达式、注释(与<%--....--%>)),其中要更进一步熟悉: (1)JSP指令标识有哪些、作用及常用标识的用法? (2)JSP脚本标识有哪些、作用及用法? (3)JSP动作标记有哪些、作用及常用标记的用法? (4)与<%@ include>的用法及区别 解答: (1)JSP指令标识有哪些、作用及常用标识的用法? JSP指令标记有:page指令;include指令;taglib指令 Page指令:只有import属性可以使用多次,其他属性只能出现一次 作用:用于定义在整个JSP页面范围中有效地属性; 常用标志:contentType,language ,errorPage, session, extends...... Include指令:<%@ include file=“”%>file属性不支持任何表达式,也不允许通过以下表达: <%@ include file=”welcome.jsp?Name=admin”%> 作用:在当前使用该指令的位置嵌入其他文件,如果被包含的文件是可执行的代码,则显示代码运行后的结果。引用外部文件,可以减少代码的冗余。 绝对路径与相对路径: 属性值以“/”开头指的是绝对路径,将在当前应用的根目录下查找文件; 如果以文件名称或以文件夹名开头,指的是相对路径,将在当前页面的目录下查找文件。 (2)JSP脚本标识有哪些、作用及用法? 脚本标志:jsp表达式,声明标志,脚本程序 <%=jsp表达式%> 作用:向页面输出内容,生成动态的连接地址,动态指定表单处理页面,,围通过循环语句生成的元素命名。 <%! 声明变量或者方法的代码%>, 声明变量或方法 <% Java程序片段%>

JSP复习题-简答

1-1 JSP的全称是什么?JSP有什么优点?JSP与ASP、PHP的相同点是什么?答:全称Java Server Page优点:继承了Java 技术的简单、便利、面向对象,跨平台和安全可靠等优点,在JSP中利用了。JavaBean和JSP元素,可以有效的将静态的HTML代码和动态数据区分开来,给程序的修改和扩展带来了很大方便;与其他动态网页技术相同点,通过在页面中加入脚本代码来生成动态内容。1-2 JSP中可重复使用的组件有哪些?JavaBean/JSP标准标签/自定义标签1-3 什么是JSP的预编译特征?答:JSP页面在被服务器执行前,都是已经被编译好的,并且通常只进行一次编译,即在JSP页面被第一次请求时进行编译,在后续的请求中如果JSP页面没有被修改过,服务器只需要直接调用这些已经被编译好的代码,这大大提高了访问速度。1-4 开发JSP程序需要具备哪些开发环境?答:Web浏览器/Web服务器/JDK/数据库1-7 本章介绍的用来开发JSP程序的开发工具是什么?答:Eclipse+MyEclipse2-1 什么是类?如何定义类?类的成员一般由哪两部分组成?这两部分的区别是什么?答:类是用来创建对象的模板,它包含被创建的对象的状态描述和方法的定义。定义类的格式:[修饰符] class <类名> [extends 父类名] [implements 接口列表]{定义成员变量定义成员方法}类的成员由成员变量和成员方法组成,成员变量用来表示类的状态和属性,成员方法表示类的行为。2-2 什么是成员变量和局部变量?他们的区别是什么答:成员变量是在类体中变量定义部分所声明的变量;局部变量是在方法体重声明的变量和方法的参数两者的区别在于有效范围不同,成员变量在整个类内都有效,而局部变量只在定义他的成员方法内才有效。2-3 如何创建、使用并销毁对象?答:创建对象的方法:类名对象名; 对象名= new 构造方法名([参数列表]);或者:类名对象名= new 构造方法名([参数列表]);使用对象的方法:可以通过对象来引用其成员变量,并改变成员变量的值,而且还可以通过对象来调用其成员方法。通过使用运“.”实现对成员变量的访问和成员方法的调用。销毁对象的操作由Java提供的垃圾回收机制自动完成。不需要手工完成销毁对象操作。或者调用对象的finalize()方法。2-4 构造方法的概念及用途是什么?答:构造方法是一种特殊的方法,它的名字必须与它所在类的名字完全相同,并且没有返回值,也不需要使用关键字void进行标识。构造方法用于对对象中的所有成员变量进行初始化,在创建对象时立即被调用。2-6 在Java语言中,处理异常的语句有哪4种?答try …catch、finally 、throw、throws2-7 在JSP中引入JavaScript的方法有哪些?方法1.在页面中直接嵌入JavaScript方法2.链接外部JavaScript2-9 在JavaScript中如何定义并调用函数?function functionName([parameter1, parameter2,…]){statements[return expression] }如果要调用不带参数的函数,则使用函数名加上括号即可;如果要调用的函数带参数,则在括号中加上需要传递的参数,如果包含多个参数,各参数间用逗号分隔。如果函数有返回值,那么可以使用赋值语句将函数值赋给一个变量。3-1 JSP页面由哪些元素组成?<%@ page language="java" contentType="text/html; charset=gb2312”%><%@ page import="java.util.Date" %> JSP页面的基本构成

<% String today=new Date().toLocaleString(); %>今天是:<%=today%>
3-2 JSP中主要包含哪几种指令标识?它们的作用及语法格式是什么?page指令定义在整个JSP 页面范围内有效的属性。<%@ page contentType="text/html;charset=gbk" %>include指令用于在当前的JSP页面中使用该指令的位置嵌入其他的文件,如果被包含的文件中有可执行的代码,则显示代码执行后的结果。<%@ include file="文件的绝对路径或相对路径" %>通过使用taglib指令,开发者就可以在页面中使用标准标签或自定义标签来完成特殊的功能。<%@ taglib {uri="URI" | tagdir="/WEB-INF/tags[/subdir]+"} prefix="tagPrefix" %><%@taglib prefix="mytagf" tagdir="/WEB-INF/tags"%>3-3 JSP中的脚本标识包含哪些元素?它们的作用及语法格式是什么?声明(Declaration)表达式(Expression)脚本程序(Scriptlet)<%! 声明变量或方法的代码%>在页面中通过声明标识声明的变量和方法,在整个页面内都有效,它们将成为JSP页面被转换为Java类后类成员变量和成员方法。并且它们会被多个线程即多个用户共享,其中的任何一个线程对声明的变量或方法的修改都会改变它们原来的状态。它们的生命周期从创建到服务器关闭后结束。表达式用于向页面中输出信息。<%= 变量或可以返回值的方法或Java表达式%>(1)向页面输出内容:<% String name="quchch"; %>用户名:<%=name%>(2)生成动态的链接地址:<% String path="welcome.jsp"; %>链接到welcom.jsp(3)动态指定Form表单处理页面:<% String name="logon.jsp";%>(4)为通过循环语句生成的元素命名:<% for(int i=1;i<3;i++){ %> >:">
<% } %>在脚本程序中可以定义变量、调用方法和进行各种表达式运算。在脚本

JSP期末复习资料

一、单选题 1、下面哪项不是JavaBean的编码规则()C A、JavaBean类必须有一个没有参数的构造函数。 B、JavaBean类的属性必须定义为私有。 C、需要在web.xml中配置JavaBean类。 D、JavaBean中每个属性必有相应的获取和设置方法。 2、创建JSP应用程序时,配置文件web.xml应该在程序下的()目录中。C A)admin B)servlet C)WEB-INF D)WebRoot 3、假设Tomcat6中在名为helloapp的Web应用有一hello.jsp文件,它的文件路径如下: %CA TALINA_HOME%/webapps/helloapp/hello/hello.jsp,那么在浏览器端访问hello.jsp的URL 是什么?()C A、http://localhost:8080/hello.jsp B、http://localhost:8080/helloapp/hello.jsp C、http://localhost:8080/helloapp/hello/hello.jsp D、http://localhost:8080/webapps/helloapp/hello/hello.jsp 4、JSP本身未加载的包是:()B A、https://www.doczj.com/doc/fe9691089.html,ng.* B、java.io.* C、javax.servlet.* D、javax.servlet.jsp.* 6、设在表单中有一组复选钮标记,如下列代码:

请选择喜欢的城市: 长春
北京
大连
上海
如果在register.jsp是取city的值,最适合的方法为()D A、String city=request.getParameter(“city”); B、String[] cities=request.get Parameter(“city”); C、String city=request.getAttribute(“city”); D、String[] cities=request.getParameterV alues(“city”); 7、Web应用程序打包后的扩展名是:()B A、EAR B、WAR C、JAR D、RAR 8、JSP代码<%="1+4"%>的结果是:()A A、1+4 B、5 C、14 D、无输出 9、以下方法中,不属于window对象的方法是:()C A、alert() B、open() C、val() D、clearTimeout() 11、下面说法不正确的是:()B A、标签对之间可以嵌套其他标签 B、标签对之间的内容在文档范围内显示 C、标签对指定网页标题 D、<body>标签对之间的内容显示在浏览器窗口</p> <div> <div>相关主题</div> <div class="relatedtopic"> <div id="tabs-section" class="tabs"> <ul class="tab-head"> <li id="6763927"><a href="/topic/6763927/" target="_blank">jsp学习资料</a></li> <li id="22928458"><a href="/topic/22928458/" target="_blank">jsp复习资料</a></li> </ul> </div> </div> </div> <div class="container"> <div>文本预览</div> <div class="textcontent"> </div> </div> </div> <div class="category"> <span class="navname">相关文档</span> <ul class="lista"> <li><a href="/doc/3f2162653.html" target="_blank">JSP期末考试复习资料</a></li> <li><a href="/doc/6718014914.html" target="_blank">JSP从入门到实战视频教程</a></li> <li><a href="/doc/a98362168.html" target="_blank">JSP期末复习资料</a></li> <li><a href="/doc/df16202123.html" target="_blank">韩顺平 j2ee视频实战教程jsp第1讲 课件 笔记</a></li> <li><a href="/doc/0714796969.html" target="_blank">JSP技术简介(外文翻译)</a></li> <li><a href="/doc/4816262547.html" target="_blank">jsp复习大纲内容整理</a></li> <li><a href="/doc/9012716581.html" target="_blank">JspStudy搭配myEclipse学习JSP</a></li> <li><a href="/doc/bd8144801.html" target="_blank">JSP外文资料复习过程</a></li> <li><a href="/doc/f48793007.html" target="_blank">JSP学习笔记</a></li> <li><a href="/doc/2b19191918.html" target="_blank">JSP复习资料</a></li> <li><a href="/doc/5915627642.html" target="_blank">人力资源管理案例(宝洁).jsp学习资料</a></li> <li><a href="/doc/ac3244694.html" target="_blank">JSP技术简介</a></li> <li><a href="/doc/d82672984.html" target="_blank">jsp参考文献)</a></li> <li><a href="/doc/3011933083.html" target="_blank">JSP程序设计课件-专业文档资料</a></li> <li><a href="/doc/8f2045520.html" target="_blank">JSP复习资料</a></li> <li><a href="/doc/a818248926.html" target="_blank">轻松学Java Web开发之JSP基础</a></li> <li><a href="/doc/f67836502.html" target="_blank">jsp搜索引擎源代码</a></li> <li><a href="/doc/2b16106815.html" target="_blank">JSP实用教程第三版课后复习资料</a></li> <li><a href="/doc/5213914438.html" target="_blank">JSP网络教学复习资料(黑大版)</a></li> <li><a href="/doc/9518306076.html" target="_blank">JSP技术简介</a></li> </ul> <span class="navname">最新文档</span> <ul class="lista"> <li><a href="/doc/0619509601.html" target="_blank">幼儿园小班科学《小动物过冬》PPT课件教案</a></li> <li><a href="/doc/0a19509602.html" target="_blank">2021年春新青岛版(五四制)科学四年级下册 20.《露和霜》教学课件</a></li> <li><a href="/doc/9619184372.html" target="_blank">自然教育课件</a></li> <li><a href="/doc/3319258759.html" target="_blank">小学语文优质课火烧云教材分析及课件</a></li> <li><a href="/doc/d719211938.html" target="_blank">(超详)高中语文知识点归纳汇总</a></li> <li><a href="/doc/a519240639.html" target="_blank">高中语文基础知识点总结(5篇)</a></li> <li><a href="/doc/9019184371.html" target="_blank">高中语文基础知识点总结(最新)</a></li> <li><a href="/doc/8819195909.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/8319195910.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/7b19336998.html" target="_blank">高中语文基础知识点总结大全</a></li> <li><a href="/doc/7019336999.html" target="_blank">超详细的高中语文知识点归纳</a></li> <li><a href="/doc/6819035160.html" target="_blank">高考语文知识点总结高中</a></li> <li><a href="/doc/6819035161.html" target="_blank">高中语文知识点总结归纳</a></li> <li><a href="/doc/4219232289.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/3b19258758.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/2a19396978.html" target="_blank">高中语文知识点归纳(大全)</a></li> <li><a href="/doc/2c19396979.html" target="_blank">高中语文知识点总结归纳(汇总8篇)</a></li> <li><a href="/doc/1619338136.html" target="_blank">高中语文基础知识点整理</a></li> <li><a href="/doc/e619066069.html" target="_blank">化工厂应急预案</a></li> <li><a href="/doc/b019159069.html" target="_blank">化工消防应急预案(精选8篇)</a></li> </ul> </div> </div> <script> var sdocid = "f80eeeebaeaad1f346933fe7"; </script> <script type="text/javascript">bdtj();</script> <footer class="footer"> <p><a href="/tousu.html" target="_blank">侵权投诉</a> © 2022 www.doczj.com <a href="/sitemap.html">网站地图</a></p> <p> <a href="https://beian.miit.gov.cn" target="_blank">闽ICP备18022250号-1</a>  本站资源均为网友上传分享,本站仅负责分类整理,如有任何问题可通过上方投诉通道反馈 <script type="text/javascript">foot();</script> </p> </footer> </body> </html>