文档库 最新最全的文档下载
当前位置:文档库 › jsp考试试题及答案

jsp考试试题及答案

jsp考试试题及答案

【篇一:jsp试题及答案】

=txt>一、选择题

1、下面哪一个不是动态网页技术()。

(a)asp (b) jsp (c)php (d) html

2、在jsp程序中只有3种编译指令,分别是加载指令、标记数据库

指令和()。

(a)网页指令(b)描述指令(c)取代指令(d)释放指令

3、在jsp系统环境中常用()作为其虚拟机

(a)tomcat (b)j2sdk(c)servlet(d)web服务器

4、page指令中的“contentype”属性是用于指出()。

(a )数据库类型(b) 网页类型 () 服务器类型 (d) 用户类型

5、字节型(byte)数据类型的取值范围是()。

(a)-128---127(b)-127---128(c)-32768---32767(d)-

32767---32768

6、“include”的指令作用是把jsp程序、html网页或其它的()嵌入到当前的jsp网页中。

(a)可执行程序(b)文本文件 (c) 批处理文件(d) asp 代码

7、利用jsp动作可以动态插入文件、重用javabean组件、重定向

到其它页面和()等。

(a) 为java插件提供参数 (b) 向其它页面发出请求

(c) 解释执行jsp语句 (d) 向客户端发出请求

8、( )是jsp中最基本的对象,它是用户与服务器进行交互的基础。(a)response对象(b)session对象

(c)application对象(d)request对象

9、可以实现不同网页之间的数据共享,而且还可以实现跨机共享数据的jsp对象是()。

(a)response对象(b)session对象

(c)application对象(d)request对象

10、dreamweaver mx是()公司的产品。

(a)microsoft (b) adobe (c)sun (d)macromedia

二、填空题:

1、jsp是__________公司首创的一种新型动态网页编程技术。

2、jsp具有动态页面与静态页面分离的特点以及与____________的无关性。

3、html语言结构一般分两大部分分别是:_________和文档体。

4、java中处理异常的语句有3个分别是try、_______和finally。

5、关系性数据库管理系统的标准语言是________。

6、jsp中的动作组件是用来控制______________。

7、sun公司开发出一个完全用java语言编写并用于java程序与数

据库的接口技术是________。

8、javabean组件可以分为____________和非可视化组件两类。

9、sql语句中的select是用于____________的。

10、在sql中的select语句的通配符“#”是用来代替一个未知的

______。

三、判断题

1、html是超文本标识语言,它是一种纯文字的文档。()

2、html语句是不区分大小写的。()

3、在java语言中数据类型进行自动转换的规则是将占内存大的,

转换为占内存小的。()

4、在jsp网页中可以没有html语句。()

5、forward动作可以把当前网页重新导向另外的一个服务器。()

6、sql 语句只能用于jsp网页设计中()。

7、include动作和include指令执行的结果是相同的。()

8、能够为jdbc提供数据库支持的厂商有ibm、oracle、sybase、informix等公司。()

9、动态网页技术asp是由ibm公司开发的。()

10、jsp源程序可以在记事本中进行编辑。()

四、简答题

1、简述jsp的具体执行过程。

2、要实现jsp服务器需要哪些相关软件?

3、java中的流程控制语句有哪两类,试写出一两句。

4、简述cookie的作用,它可以为用户指供哪些方便?

5、jsp中对文件的读、写分别分哪两种方式?

五、应用题(写出下列程序段完成的功能,并在标有//后加上该语句

完成功能的注释)

%@page contenttype=text/html;charset=gb2312

import=java.sql.*%

html

head

title利用while循环逆序来获取所有记录/title

/head

body bgcolor=lightblue

center

font size=6

b利用while循环逆序来获取所有记录/b

/font

hr

%

try

{

class.forname(sun.jdbc.odbc.jdbcodbcdriver);① //

______________________________________________________ connection

con=drivermanager.getconnection(jdbc:odbc:student);②//

______________________________________________________ statement statement=con.createstatement(

resultset.type_scroll_insensitive,resultset.concur_read_only);

③//

_________

_______________________________________________

//建立resultset对象

resultset rs=null;

%

table align=center border=1 bgcolor=lightblue width=850

tr align=center

td学生姓名/td

td性别/td

td班级/td

td语文/td

td数学/td

td物理/td

td化学/td

/tr

%

string string_sql=select * from student;

rs=statement.executequery(string_sql);

//首先将记录指针移动到最后一条之下

rs.afterlast();

while(rs.previous())

{out.println(tr align=center);

out.println(td+rs.getstring(name)+/td);

out.println(td+rs.getstring(sex)+/td);

out.println(td+rs.getstring(class)+/td);

out.println(td+rs.getstring(chinese)+/td);

out.println(td+rs.getstring(maths)+/td);

out.println(td+rs.getstring(physics)+/td);

out.println(td+rs.getstring(chemistry)+/td); out.println(/tr); }

rs.close();

statement.close();

con.close();

}

catch (exception e)

{

out.println(font color=red size=5b);

out.println(jsp页面中出现有错误!);

out.println(/b/font);

}

%

/table

/center

/body

/html

该程序完成的功能如下:

______________________________________________________ _________

______________________________________________________ _________

______________________________________________________ _________

jsp编程技术与应用答案

一、选择题

1、d

2、a

3、b

4、b

5、a

6、b

7、a

8、d

9、c 10 、d

二、填空题:

1、sun

2、硬件平台

3、文档头

4、catch

5、sql

6、jsp引擎动作

7、jdbc

8、可视化组件

9、检索数据 10、数字

三、判断题

四、简答题

1、要点:通过浏览器向web服务器提出请求

服务器得到请求后,将数据转化为servlet代码

jsp引擎对jsp代码进行编译

由java虚拟机执行编译文件,并把结果返回客户

2、要点:jsp引擎 tomcat

支持jsp的web服务器如:apche 、iis

java虚拟机 j2sdk

3、一类是条件语句如if?.else?,switch?case..语句

一类是循环语句如 while? ,for?.语句

4、要点:cookie是服务器发送组浏览器的信息量很小的纯文本信息,当用户以后访问同一web服务器时,浏览器会把这一信息原样发送给服务器。通过让服务器读取它原先保存到客户端的信息,网站能够为浏览者提供一系列的方便。

5、要点:读分为逐个字符读取和以行为单位读取

写分为无分行写入和分行写入

【篇二:jsp试题及答案】

1. 早期的动态网站开发技术主要使用的是()技术。该技术的基本原理是将浏览器提交至web服务器的数据通过环境变量传递给其他外部程序,经外部程序处理后,再把处理结果传送给web服务器,最后由web服务器把处理结果返回浏览器。

a.jspb.asp c.php d.cgi

2.jsp页面的代码由两个部分组成,它们是()和()。

a.javascript代码

b.vbscript代码

c.html代码

d.jsp代码

3.jsp在服务器中进行编译时,将首先被转译成()

a.java语言

b.html代码

c.servlet

d.以上都是

4.在一个jsp页面代码中一定没有的部分是()

a.javascript代码

b.jsp指令

c.jsp动作

d.html代码

二.问答题

1. 简述jsp的基本运行原理。

2. 列举出jsp具有的一些特点。

参考答案

一.选择题

1. d

2. c d

3. c

4. a

二.问答题

1. 答:首先由浏览器向web服务器提出访问jsp页面的请求(request),然后由jsp容器负责将jsp转换成servlet,产生的servlet经过编译后生成类文件,然后再把类文件加载到内存进行执行。最后由web服务器将执行结果响应(response)给客户端浏览器。

2. 答:1. 一次编写,随处运行

2. 可重用组件技术

3. 标记化页面开发

4. 对大型复杂web应用支持良好

第二章习题

三.选择题

1. 下列不是jsp开发工具的是()

a.jbuilder b. ibm websphere c. myeclipsed.firework

2.要建构jsp的开发环境,除了需要安装以上的jsp开发工具外,还必须安装()和()

a.jdk

b. dreamweaver mx

c.flash mx

d.tomcat

3. jsp隶属java家族,下列不属于java家族的是()

a.servlet

b.javabean

c.java

d.javascript

4.web应用程序体系结构最多可分为三层,不属于这三层的是()

a.表示层

b.业务层

c.数据访问层

d.网络链接层

四.问答题

3. 简述tomcat的作用。

4. 配置jsp开发环境,并测试如下程序:

%@ page language=java import=java.util.* pageencoding=gbk% html

head

title第一个jsp程序/title

/head

body

h1第一个jsp实例/h1

ul

li日期:%= new java.util.date().tolocalestring() %

/ul

%

if(calendar.getinstance().get(calendar.am_pm)==calendar.am){ %

早上好

% }

else{ %

下午好

%} %

/body

/html

参考答案

三.选择题

1. d

2. a d

3. d

4. d

四.问答题

1. 答:tomcat是一个强大的jsp web服务器, 能够处理静态和动态页面,处理大量网络客户请求,支持各种服务以及允许用户进行配置。

它高速并且强壮,并且具有jsp/servlet的解析能力。

2. 运行页面如下:

第三章

五.选择题

1. 在jsp中,()动作用于将文件包含入jsp页面。

a.pageb. forward c.included. taglib

2. 在j2ee中, test.jsp文件如下,试图运行时,将发生() html % string str=null;%

str is %=”str”%

/html

a. 转译期错误

b. 编译期错误

c. 运行后,浏览器上显示:str is null

d. 运行后,浏览器上显示:str is str

3. 给定jsp程序源码如下:

html

% int count =1; %

__________/html

以下()语句可以在下划线处插入,并且运行后输出结果是:1。

a. %=++count %

b. %++count;%

c. %count++;%

d. %=count++%

4. page指令用于定义jsp文件中的全局属性,下列关于该指令用法的描述不正确的是:()

a. %@ page %作用于整个jsp页面。

b. 可以在一个页面中使用多个%@ page %指令。

c. 为增强程序的可读性,建议将%@ page %指令放在jsp文件的开头,但不是必须的

d. %@ page %指令中的属性只能出现一次

5. 对于jsp中的声明%!%的说法错误的是:()

a.一次可声明多个变量和方法,只要以“;”结尾就行

b. 一个声明仅在一个页面中有效

c.声明的变量将作为局部变量

d.在该声明中声明的变量将在jsp页面初始化时初始化

六.填空题

1. jsp有三种指令,它们分别是________,_________,

_________。

【篇三:jsp试题及答案】

class=txt>答:jsp共有以下9种基本内置组件(可与asp的6种内部组件相对应):

request :用户端请求,此请求会包含来自get/post请求的参数

response :网页传回用户端的回应

pagecontext :网页的属性是在这里管理

session :与请求有关的会话期

application :servlet 正在执行的内容

out :用来传送回应的输出

config :servlet的构架部件

page :jsp网页本身

exception:针对错误网页,未捕捉的例外

2. 2.jsp有哪些动作?作用分别是什么?

答:jsp共有以下6种基本动作

jsp:include:在页面被请求的时候引入一个文件。

jsp:usebean:寻找或者实例化一个javabean。

jsp:setproperty:设置javabean的属性。

jsp:getproperty:输出某个javabean的属性。

jsp:forward:把请求转到一个新的页面。

jsp:plugin:根据浏览器类型为java插件生成object或embed标

3.forward 和redirect的区别

答:forward是服务器请求资源,服务器直接访问目标地址的url,

把那个url的响应内容读取过来,然后把这些内容再发给浏览器,浏

览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏

中还是原来的地址。

redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请

求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,

所以session,request参数都可以获取。

4.jsp中动态include与静态include的区别?

答:动态include用jsp:include动作实现

jsp:include page=included.jsp flush=true /它总是会检查所含文

件中的变化,适合用于包含动态页面,并且可以带参数

静态include用include伪码实现,定不会检查所含文件的变化,适

用于包含静态页面

%@ include file=included.htm %

5.两种跳转方式分别是什么?有什么区别?

答:有两种,分别为:

jsp:include page=included.jsp flush=true

jsp:forward page= nextpage.jsp/

前者页面不会转向include所指的页面,只是显示该页的结果,主

页面还是原来的页面。执行完后还会回来,相当于函数调用。并且

可以带参数.后者完全转向新页面,不会再回来。相当于go to 语句。

6.jsp的内置对象及方法。

答:request表示httpservletrequest对象。它包含了有关浏览器

请求的信息,并且提供了几个用于

获取cookie, header, 和session数据的有用的方法。

response表示httpservletresponse对象,并提供了几个用于设置送回浏览器的响应的方法(如cookies,头信息等)

out对象是javax.jsp.jspwriter的一个实例,并提供了几个方法使

你能用于向浏览器回送输出结果。 pagecontext表示一个

javax.servlet.jsp.pagecontext对象。它是用于方便存取各种范围

的名字空间、servlet相关的对象的api,并且包装了通用的servlet

相关功能的方法。

session表示一个请求的javax.servlet.http.httpsession对象。session可以存贮用户的状态信息 applicaton 表示一个

javax.servle.servletcontext对象。这有助于查找有关servlet引擎

和servlet环境的信息

config表示一个javax.servlet.servletconfig对象。该对象用于存

取servlet实例的初始化参数。 page表示从该页面产生的一个servlet实例

servlet笔试题目

1.说一说servlet的生命周期?

答:servlet有良好的生存期的定义,包括加载和实例化、初始化、

处理请求以及服务结束。这个生存期由javax.servlet.servlet接口的init,service和destroy方法表达。 servlet被服务器实例化后,容

器运行其init方法,请求到达时运行其service方法,service方法

自动派遣运行与请求对应的doxxx方法(doget,dopost)等,当

服务器决定将实例销毁的时候调用其destroy方法。

与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而cgi对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。

2.java servlet api中forward() 与redirect()的区别?

答:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显

示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的

地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到

跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量使用forward()方法,并且,这样也有助于隐藏实际的链接。在

有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须

使用sendredirect()方法。

3.servlet的基本架构

答:

public class servletname extends httpservlet {

public void dopost(httpservletrequest request, httpservletresponse response) throws

servletexception, ioexception {

}

public void doget(httpservletrequest request, httpservletresponse response) throws

servletexception, ioexception {

}

}

4.什么情况下调用doget()和dopost()?

答:jsp页面中的form标签里的method属性为get时调用

doget(),为post时调用dopost()。

5.servlet的生命周期

答:web容器加载servlet,生命周期开始。通过调用servlet的

init()方法进行servlet的初始化。通过调用service()方法实现,根

据请求的不同调用不同的do***()方法。结束服务,web容器调用servlet的destroy()方法。

6.如何现实servlet的单线程模式

答:%@ page isthreadsafe=false%

7. 页面间对象传递的方法

答:request,session,application,cookie等

8.四种会话跟踪技术

答:会话作用域servletsjsp 页面描述

page否是代表与一个页面相关的对象和属性。一个页面由一个编译

好的 java servlet 类(可以带有任何的 include 指令,但是没有include 动作)表示。这既包括 servlet 又包括被编译成 servlet 的

jsp 页面

request是是代表与web 客户机发出的一个请求相关的对象和属性。一个请求可能跨越多个页面,涉及多个 web 组件(由于 forward 指

令和 include 动作的关系)

session是是代表与用于某个 web 客户机的一个用户体验相关的对

象和属性。一个 web 会话可以也经常会跨越多个客户机请求

application是是代表与整个 web 应用程序相关的对象和属性。这

实质上是跨越整个 web 应用程序,包括多个页面、请求和会话的一

个全局作用域

9.request对象的主要方法

答:

setattribute(string name,object):设置名字为name的request

的参数值

getattribute(string name):返回由name指定的属性值

getattributenames():返回request对象所有属性的名字集合,结

果是一个枚举的实例

getcookies():返回客户端的所有cookie对象,结果是一个

cookie数组

getcharacterencoding():返回请求中的字符编码方式

getcontentlength():返回请求的body的长度

getheader(string name):获得http协议定义的文件头信息

getheaders(string name):返回指定名字的request header的所

有值,结果是一个枚举的实例 getheadernames():返回所以request header的名字,结果是一个枚举的实例

getinputstream():返回请求的输入流,用于获得请求中的数据

getmethod():获得客户端向服务器端传送数据的方法

getparameter(string name):获得客户端传送给服务器端的有

name指定的参数值

getparameternames():获得客户端传送给服务器端的所有参数的

名字,结果是一个枚举的实例getparametervalues(string name):获得有name指定的参数的所有值

getprotocol():获取客户端向服务器端传送数据所依据的协议名称

getquerystring():获得查询字符串

getrequesturi():获取发出请求字符串的客户端地址

getremoteaddr():获取客户端的ip地址

getremotehost():获取客户端的名字

getsession([boolean create]):返回和请求相关session

getservername():获取服务器的名字

getservletpath():获取客户端所请求的脚本文件的路径

getserverport():获取服务器的端口号

removeattribute(string name):删除请求中的一个属性

10.我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?

答:

public string translate (string str) {

string tempstr = ;

try {

tempstr = new string(str.getbytes(iso-8859-1), gbk);

tempstr = tempstr.trim();

}

catch (exception e) {

system.err.println(e.getmessage());

}

return tempstr;

}

11.servlet执行时一般实现哪几个方法?

答:

public void init(servletconfig config)

public servletconfig getservletconfig()

public string getservletinfo()

public void service(servletrequest request,servletresponse response)

public void destroy()

12.说出数据连接池的工作机制是什么?

答:j2ee服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。

13.class.forname的作用?为什么要用?

答:调用该访问返回一个以字符串指定类名的类的对象。

1、如何混合使用jsp和ssi #include?

在jsp中可以使用如下方式包含纯html:

!--#i nclude file=data.inc--

但是如果data.inc中包含jsp code ,我们可以使用:

%@include file=data.inc%

2、如何执行一个线程安全的jsp?

只需增加如下指令

%@ page isthreadsafe=false %

3、jsp如何处理html form中的数据?

通过内置的request对象即可,如下:

%

string item = request.getparameter(item);

int howmany = new

integer(request.getparameter(units)).intvalue(); %

4、在jsp如何包含一个静态文件?

静态包含如下:%@ include file=copyright.html %

动态包含如下:jsp:include page=copyright.html flush=true/

5、在jsp中如何使用注释?

主要有四中方法:

1。%-- 与 --%

2。//

3。/**与**/

4。!--与--

6、在jsp中如何执行浏览重定向?

使用如下方式即可:

%

response.setstatus(httpservletresponse.sc_moved_permanent ly); string newlocn=/newpath/index.html;

response.setheader(location,newlocn);

%

7、如何防止在jsp或servlet中的输出不被browser保存在cache 中?

把如下脚本加入到jsp文件的开始即可:

%

response.setheader(cache-control,no-store); //http 1.1

response.setheader(pragma,no-cache); //http 1.0

response.setdateheader (expires, 0); //prevents caching at the proxy server %

8、在jsp中如何设置cookie?

cookie是作为http header的一部分被发送的,如下方法即可设置: %

cookie mycookie = new cookie(aname,avalue);

response.addcookie(mycookie);

相关文档