admin 管理员组

文章数量: 887242


2024年1月16日发(作者:饿了吗红包涨价)

JSP编程技术习题集

第一章 JSP技术基础习题

一、选择题

1.当用户请求jsp页面时,JSP引擎就会执行该页面的字节码文件响应客户的请求,执行字节码文件的结果是

A)发送一个JSP源文件到客户端

B)发送一个Java文件到客户端

C)发送一个HTML页面到客户端

D)什么都不做。

3.下列动态网页和静态网页的根本区别描述错误的是。

A)静态网页服务器端返回的HTML文件是事先存储好的

B)动态网页服务器端返回的HTML文件是程序生成的。

C)静态网页文件里只有HTML标记,没有程序代码。

D)动态网页中只有程序,不能有HTML代码。

4.不是JSP运行必须的是

A)操作系统

B)JavaJDK

C)支持Jsp的Web服务器

D)数据库

7.Tomcat服务器的默认端口号是:

A)80 B)8080 C)21 D)2121

第三章 JSP语法基础

一、选择题

1.JSP的编译指令标记通常是指:

A)Page指令、Include指令和Taglib指令

B)Page指令、Include指令和Plugin指令

C)Forward指令、Include指令和Taglib指令

D)Page指令、Param指令和Taglib指令

2.可以在以下哪个( )标记之间插入Java程序片?

A)<% 和 %> B)<% 和 />

C) D)<% 和 !>

3.下列哪一项不属于JSP动作指令标记?

A) B)

C) D)

4.JSP的Page编译指令的属性Language的默认值是:

A)Java B)C

C)C# D)SQL

5.JSP的哪个指令允许页面使用者自定义标签库?

A)Include指令 B)Taglib指令

C)Include指令 D)Plugin指令

6.可以在以下哪个( )标记之间插入变量与方法声明?

A)<% 和 %> B)<%! 和 %>

C) D)<% 和 !>

7.能够替代<字符的替代字符是()?(C)

A)< B)>

C)< D) 

8.动作标记中,scope的值不可以是。

A)page B)request

C)session D)response

9.下列()注释为隐藏型注释。。

A)

B)

C)<%-- 注释内容 --%>

D)] -->

10.下列变量声明在( )范围内有效。(C)。

<%! Date dateTime;

int countNum;

%>

A)从定义开始处有效,客户之间不共享

B)在整个页面内有效,客户之间不共享

C)在整个页面内有效,被多个客户共享

D)从定义开始处有效,被多个客户共享

12.在“<%=”和“%>”标记之间放置( ),可以直接输出其值。

A) 变量 B)Java表达式 C)字符串 D)数字

13.include指令用于在JSP页面静态插入一个文件,插入文件可以是JSP页面、HTML网页、文本文件或一段Java代码,但必须保证插入后形成的文件是(B)。

A)是一个完整的HTML文件

B)是一个完整的JSP文件

C)是一个完整的TXT文件

D)是一个完整的Java源文件

14.JSP页面可以在“<%=”和“%>”标记之间放置Java表达式,直接输出Java表达式的值。组成“<%=”标记的各字符之间(B)。

A)可以有空格 B)不可以有空格

C)必须有空格 D)不确定

三、填空题

8.JSP页面中,输出型注释的内容写在 “” 之间。

10.Page指令的属性Language的默认值是_Java____。

四、思考题

1.include标记与include动作标记有什么区别?

4.在<%!和%>之间声明的变量和在<%和%>之间声明的变量有何区别?

7.请说出一个JSP页面的基本组成。

第四章 JSP的内置对象

一、选择题

2.以下哪个对象提供了访问和放置页面中共享数据的方式

A)pageContext B)response C)request D)session

4.当response的状态行代码为哪个时,表示用户请求的资源不可用?

A)101 B)202 C)303 D)404

6.在JSP中为内建对象定义了4种作用范围,即Application Scope、Session

Scope、Page Scope和( )四个作用范围。

A)Request Scope B) Response Scope

C)Out Scope D) Writer Scope

7.out对象是一个输出流,其输出各种类型数据并换行的方法是(C)

A)( ) B)e( )

C)n( ) D)( )

8.out对象是一个输出流,其输出换行的方法是(B)

A)( ) B)e( )

C)n( ) D)( )

9.out对象是一个输出流,其输出不换行的方法是(A)

A)( ) B)e( )

C)n( ) D)( )

10.Form表单的method属性能取下列哪项的值

A)submit B)puts

C)post D)out

11.能在浏览器的地址栏中看到提交数据的表单提交方式是

A)submit B)get

C)post D)out

12.可以利用request对象的哪个方法获取客户端的表单信息

A)ameter() B)ameter()

C)arameter() D)rParameter()

14.JSP页面中amter(String )得到的数据,其类型是

A)Double B)int

C)String D)Integer

二、判断题

三、填空题

1.out对象的__ ()_____方法,功能是输出缓冲的内容。

2.JSP的__session___对象用来保存单个用户访问时的一些信息。

3.response对象的_sendRedirect(URL url)___方法可以将当前客户端的请求转到其他页面去。

4.当客户端请求一个JSP页面时,JSP容器会将请求信息包装在__request__对象中。

5.der(“Refresh”, “5”)的含义是指__页面刷新时间为 5秒__。

6.在JSP中为内置对象定义了4种作用范围,即Application Scope 、Session

Scope 、Page Scope 和Request Scope 四个作用范围。

7.表单的提交方法包括___post_______和____get______方法。

8.表单标记中的__action___属性用于指定处理表单数据程序url的地址。

四、思考题

1.请说出JSP中常用的内置对象。

2.简述request对象和response对象的作用。

3.session对象与application对象有何区别?

4.网页中的表单如何定义,通常表单中包含哪些元素?

5.如何处理表单提交的汉字?

6.一个用户在不同的Web服务目录的session相同吗?

7.内置对象的4个作用范围?什么情况下session会关闭?

8.direct(URL url)方法的作用?

9.是不是所有Web服务目录共用一个application?

10.怎样使用request、session和application对象进行参数存取?

第五章 使用JavaBean

一、选择题

1.下面哪一项属于工具Bean的用途?(A)

A)完成一定运算和操作,包含一些特定的或通用的方法,进行计算和事务处理。

B)负责数据的存取

C)接受客户端的请求,将处理结果返回客户端

D)在多台机器上跨几个地址空间运行

2.JavaBean可以通过相关jsp动作指令进行调用。下面哪个不是JavaBean可以使用的jsp动作指令?

A) B)

C) D)

3.关于JavaBean,下列的叙述哪一项是不正确的?

A)JavaBean的类必须是具体的和公共的,并且具有无参数的构造器

B)JavaBean的类属性是私有的,要通过公共方法进行访问

C)JavaBean和Servlet一样,使用之前必须在项目的中注册

D)JavaBean属性和表单控件名称能很好地耦合,得到表单提交的参数

4.JavaBean的属性必须声明为private,方法必须声明为(D )访问类型。

A)private B)static

C)protect D)public

5.JSP页面通过( C )来识别Bean对象,可以在程序片中通过形式来调用Bean中的set和get方法。

A)name B)class

C)id D)classname

6.JavaBean的作用范围可以是page、request、session和( )四个作用范围中的一种。

A)application B)local

C)global D)class

7.下列哪个作用范围的bean,请求响应完成则该Bean即被释放,不同客户的Bean互不相同。(B)

A)application B)request

C)page D)session

8.下列哪个作用范围的Bean,被Web服务目录下所有用户共享,任何客户对Bean属性的修改都会影响到其他用户。(A)

A)application B)request

C)page D)session

8.下列哪个作用范围的Bean,当客户离开这个页面时,JSP引擎取消为客户该页面分配的Bean,释放他所占的内存空间。(C)

A)application B)request

C)page D)session

10.使用动作标记可以在JSP页面中设置Bean的属性,但必须保证Bean有对应的什么方法。

A)SetXxx方法 B)setXxx方法

C)getXxx方法 D)GetXxx方法

11.使用格式

"<%= expression %>" />给Bean的属性赋值,expression的数据类型和bean的属性类型( A )。

A)必须一致 B)可以不一致

C)必须不同 D)无要求

14.在JSP页面中使用格式,将表单参数为Bean属性赋值,property="*"格式要求Bean的属性名字(B)

A)必须和表单参数类型一致 B)必须和表单参数名称一一对应

C)必须和表单参数数量一致 D)名称不一定对应

三、填空题

1.在Web服务器端使用JavaBean,将原来页面中程序片完成的功能封装到JavaBean中,这样能很好地实现 业务逻辑层与视图层的分离。

2.JavaBean中用一组set方法设置Bean的私有属性值,get方法获得Bean的私有属性值。set和get方法名称与属性名称之间必须对应,也就是:如果属性名称为xxx,那么set和get方法的名称必须为 setXxx() 和 getXxx() 。

6.使用Bean首先要在JSP页面中使用 import 指令将Bean引入。

7.要想在JSP页面中使用Bean,必须首先使用 动作标记在页面中定义一个JavaBean的实例。

8.scope属性代表了JavaBean的作用范围,它可以是page、 request 、session和application四个作用范围中的一种。

四、思考题

1.JavaBean和一般意义上的Java类有何区别?

2.简述值Bean的编写方法,有哪些注意点?

3.如何实现一个Bean的属性与表单参数的关联?

4.如何在页面的程序片中使用Bean?

5.试述request、session和application有效范围的Bean生命周期?

第六章 文件访问

一、选择题

3.下列File对象的哪个方法能够判断给定路径下的文件是否存在。

A)canRead() B)canWrite()

C)exists() D)isDirectory()

4.下列File对象的哪个方法能够判断应用程序能否读取给定路径下的文件对象。( A )

A)canRead() B)canWrite()

C)exists() D)isDirectory()

5.下列File对象的哪个方法能够判断应用程序能否向给定路径下的文件对象写入数据。( B )

A)canRead() B)canWrite()

C)exists() D)isDirectory()

6.下列File对象的哪个方法能够判断File对象对应的路径是否为目录。

A)canRead() B)canWrite()

C)exists() D)isDirectory()

7.下列File对象的哪个方法能够判断File对象对应的路径是否为文件。

A)isFile() B)createNewFile()

C)lastModified() D)length()

8.下列File对象的哪个方法能够创建一个新文件,如果创建成功返回true,否则返回false(该文件已经存在)。

A)isFile() B)createNewFile()

C)mikdir() D)length()

9.下列File对象的哪个方法能够创建File对象对应的路径,如果创建成功返回true,否则返回false(该目录已经存在)

A)isFile() B)createNewFile()

C)mikdir() D)length()

三、填空题

1.Java中有四个“输入/输出”的抽象类,InputStream、 OutputStream 、Reader和 Writer 。 InputStream 和 OutputStream 用于做字节流输入输出操作, Reader 和 Writer 用于做字符流输入输出操作。

3.response对象的 setContentType() 用来定义服务器发送给客户端的MIME类型。

第七章 数据库访问

一、选择题

1.下面哪一项不是JDBC的工作任务?

A)与数据库建立连接 B)操作数据库,处理数据库返回的结果

C)在网页中生成表格 D)向数据库管理系统发送SQL语句

2.下面哪一项不是加载驱动程序的方法?

A)通过nection方法加载

B)调用方法 e

C)通过添加系统的s属性

D)通过registerDriver方法注册

7.在JDBC中,下列哪个接口不能被Connection创建。

A)Statement B)PreparedStatement

C)CallableStatement D)RowsetStatement

8.下面是加载JDBC数据库驱动的代码片段:

try{

e("bcDriver");

}

catch(ClassNotFoundException e){

(e);

}

该程序加载的是哪个驱动?()

A)JDBC-ODBC桥连接驱动 B)部分Java编写本地驱动

C)本地协议纯Java驱动 D)网络纯Java驱动

9.下面是创建Statement接口并执行executeUpdate方法的代码片段:

conn=nection("jdbc:odbc:book","","");

stmt=Statement();

String strsql="insert into book values('TP003', '','李','清华出版社',35)";

n=eUpdate(strsql);

代码执行成功后n的值为 。

A)1 B)0 C)-1 D)一个整数

10.下列代码中rs为查询得到的结果集,代码运行后表格的每一行有几个单元格

while(()){

("");

(""+ing(1)+"");

(""+ing(2)+"");

(""+ing(3)+"");

(""+ing("publish")+"");

(""+at("price")+"");

("");

}

A)4 B)5 C)6 D)不确定

15.查询结果集ResultSet对象是以统一的行列形式组织数据的,执行ResultSet rs

= eQuery ("select bid,name,author,publish,price from book");语句,得到的结果集rs的列数为

A)4 B)5

C)6 D)不确定

16.下列代码生成了一个结果集

conn=nection(uri,user,password);

stmt=Statement(_SCROLL_SENSITIVE,

_READ_ONLY);

rs=eQuery("select * from book");

下面哪项对该rs描述正确的是

A)只能向下移动的结果集 B)可上下滚动的结果集

C)只能向上移动的结果集 D)不确定是否可以滚动

17.下列代码生成了一个结果集

conn=nection(uri,user,password);

stmt=Statement(_SCROLL_SENSITIVE,

_READ_ONLY);

rs=eQuery("select * from book");

下面哪项对该rs描述正确

A)不能用结果集中的数据更新数据库中的表

B)能用结果集中的数据更新数据库中的表

C)执行update方法能更新数据库中的表

D)不确定

18.下列代码生成了一个结果集

conn=nection(uri,user,password);

stmt=Statement(_SCROLL_SENSITIVE,

_READ_ONLY);

rs=eQuery("select * from book");

下面哪项对该rs描述正确( B )

A)数据库中表数据变化时结果集中数据不变

B)数据库中表数据变化时结果集中数据同步更新

C)执行update方法能与数据库中表的数据同步更新

D)不确定

19.下列代码生成了一个结果集

conn=nection(uri,user,password);

stmt=Statement(_SCROLL_SENSITIVE,

_READ_ONLY);

rs=eQuery("select * from book");

();

下面哪项对该rs描述正确

A)t()为真

B)()为真

C)rLast()为真

D)reFirst()为真

21.下列代码生成了一个结果集

conn=nection(uri,user,password);

stmt=Statement(_SCROLL_SENSITIVE,

_READ_ONLY);

rs=eQuery("select * from book");

();rs. previous();

下面哪项对该rs描述正确

A)t()为真

B)()为真

C)rLast()为真

D)reFirst()为真

21.下列代码生成了一个结果集

conn=nection(uri,user,password);

stmt=Statement(_SCROLL_SENSITIVE,

_READ_ONLY);

rs=eQuery("select * from book");

();();

下面哪项对该rs描述正确

A)t()为真

B)()为真

C)rLast()为真

D)reFirst()为真

22.给出了如下的查询条件字符串String condition="insert book values(?,?,?,?,?)";下列哪个接口适合执行该SQL查询

A)Statement

B)PrepareStatement

C)CallableStatement

D)不确定

三、填空题

2.简单地说,JDBC能够完成下列三件事:与一个数据库建立连接(connection)、向数据库发送SQL语句(statement) 、 处理数据库返回的结果(resultset) 。

5.数据库的连接是由JDBC 的__ DrvierManager类___管理的。

6.下面的代码建立Mysql数据库的连接,请填空:

try{ e(" ");

}

创建连接的代码如下:

try{ //和数据库建立连接

conn=

nection(

" jdbc:mysql: //localhost:3306/booklib","root","");

……

();

}

catch(Exception e){

n(ng());

}

7.查询结果集ResultSet对象是以统一的行列形式组织数据的,执行ResultSet rs

= eQuery ("select bid,name,author,publish,price from book");语句,每一次rs只能看到 一 行,要在看到下一行,必须使用 next() 方法移动当前行。ResultSet对象使用 getXXX() 方法获得当前行字段的值。

8.stmt为Statement对象,执行String sqlStatement = "delete from book where

bid='tp1001' ";语句后,删除数据库表的记录需要执行eUpdate

( sqlStatement ); 语句。

四、思考题

1.什么是JDBC编程接口?

2.试列举一个你在编程和调试中碰到的数据库问题及其解决办法。

3.如何实现记录集的行操作?

4.进行记录定位的方法有哪些?

6.使用纯Java驱动操作mysql数据库的步骤?

8.使用预处理语句和存储过程有什么好处?

10.如何使用滚动的结果集?

第八章 Servlet技术

一、选择题

3.下列哪一项不是Servlet中使用的方法? (D)

A)doGet() B)doPost() C)service() D)close()

7.下面哪一项对Servlet描述错误?(C)

A)Servlet是一个特殊的Java类,它必须直接或间接实现Servlet接口

B)Servlet接口定义了Servelt的生命周期方法

C)当多个客户请求一个Servlet时,服务器为每一个客户启动一个进程

D)Servlet客户线程调用service方法响应客户的请求

9.下面Servlet的哪个方法载入时执行,且只执行一次,负责对Servlet进行初始化。

A)service() B)init()

C)doPost() D)destroy()

10.下面Servlet的哪个方法用来为请求服务,在Servlet生命周期中,Servlet每被请求一次它就会被调用一次。( A )

A)service() B)init()

C)doPost() D)destroy()

11.下面哪个方法当服务器关闭时被调用,用来释放Servlet所占的资源。

A)service() B)init()

C)doPost() D)destroy()

12.部署Servlet,下面哪一项描述错误?(D)

A)必须为Tomcat编写一个部署文件。

B)部署文件名为

C)部署文件在Web服务目录的WEB-INF子目录中

D)部署文件名为

13.下面是一个Servlet部署文件的片段:

Hello

ervlet

Hello

/helpHello

Servlet的类名是( A )

A)FirstServlet B)Hello

C)helpHello D)/helpHello

14.下面是Servlet调用的一种典型代码:

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

<%@ page import=".*" %>

访问FirstServlet

该调用属于下述哪种。(B)

A)url直接调用 B)超级链接调用

C)表单提交调用 D)jsp:forward调用

15.下面是Servlet调用的一种典型代码:

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

<%@ page import=".*" %>

该调用属于下述哪种。(D)

A)url直接调用 B)超级链接调用

C)表单提交调用 D)jsp:forward调用

三、填空题

1.用户可以有多种方式请求Servlet,如 浏览器直接调用 , 页面form中提交调用 、 超级连接调用 、 Servlet调用 等。

2.t接口定义了三个用于Servlet生命周期的方法,它们是init() 、service() 、 destroy() 方法。

3.一般编写一个Servlet就是编写一个 HttpServlet 的子类,该类实现响应用户的 POST 、 GET 、 PUT 等请求的方法,这些方法是 doPost 、doGet 和 doPut 等doXXX方法。

5.Servlet中使用Session对象的步骤为:调用 sion() 得到Session对象,查看Session对象,在会话中保存数据。

6.Servlet运行于__服务器___端,与处于客户端的___Applet____相对应。

7.当Server关闭时,__Servlet___就被销毁。

8.使用Servlet处理表单提交时,两个最重要的方法是_Post__和__Get__。

9.Serlvet接口只定义了一个服务方法就是_Service()_。

四、思考题

1.试述Servlet的生命周期。

2.MVC是三层开发结构,这三个字母按顺序分别代表_Model__、___View_、__Controller_______。

三、实训

1.安装并配置Myeclipse6.0、Mysql5.0、Sql Server2000和Tomcat6.0,注意集成开发环境的使用和工程的部署。

2.利用表单技术编写“个人情况登记表”网页,网页中包含姓名、年龄、身高、婚否、身份证号、个人爱好和个人简述,并要求在客户端作简单的确认,要求姓名不能为空,数据库采用Mysql5.0。

3.建立所在班级的数据库stubase。其中有下列表:

(1)students (姓名、学号、密码、入学日期、专业、班级编号、宿舍编号、出生日期、电子邮件、电话、家庭住址)

(2)classes(班级编号、班级名称)

(3)dormitories(宿舍编号、地址、楼号、楼层)

事先录入Classes和dormitories表中的数据。采用JspModel1模式编写Web应用程序,实现students表记录的增、删、改、查。其中学号为主键,班级编号和宿舍编号为外键,分别属于班级表和宿舍表。

7.将前面数据库stubase中学生基本信息表students表的增、删、改查程序改为MVC模式,增加下列表:

课程表coueses(课程编号、课程名称)

奖励情况表rewards(奖项编号、奖励名称)

惩处表punishments(惩处编号、惩处名称)

成绩表scores(外键学号、外键课程编号、成绩、学期、成绩)

编制处理这些表录入的界面和处理请求的Servlet。数据库的操作要求使用连接池,配置,运行程序,使各表都添加一定数量的记录。


本文标签: 方法 对象 数据库 页面 数据