ttom: 0px; -ms-text-justify: inter-ideograph;">}
7.查询结果集ResultSet对象是以统一的行列形式组织数据的,执行ResultSet rs = stmt.executeQuery ("select bid,name,author,publish,price from book");语句,每一次rs只能看到 一 行,要在看到下一行,必须使用 next() 方法移动当前行。ResultSet对象使用 getXXX() 方法获得当前行字段的值。
8.stmt为Statement对象,执行String sqlStatement = "delete from book where bid='tp1001' ";语句后,删除数据库表的记录需要执行stmt.executeUpdate ( sqlStatement ); 语句。
6 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)部署文件名为web.xml
C)部署文件在Web服务目录的WEB-INF子目录中
D)部署文件名为Server.xml
13.下面是一个Servlet部署文件的片段:
<servlet>
<servlet-name>Hello</servlet-name>
<servlet-class>myservlet.example.FirstServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/helpHello</url-pattern>
</servlet-mapping>
Servlet的类名是( A )
A)FirstServlet B)Hello
C)helpHello D)/helpHello
14.下面是Servlet调用的一种典型代码:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<html><body bgcolor=cyan>
<a href="helpHello">访问FirstServlet</a>
</body></html>
该调用属于下述哪种。(B)
A)url直接调用 B)超级链接调用
C)表单提交调用 D)jsp:forward调用
15.下面是Servlet调用的一种典型代码:
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*" %>
<html>
<body bgcolor=cyan>
<jsp:forward page="helpHello"/>
</body>
</html>
该调用属于下述哪种。(D)
A)url直接调用 B)超级链接调用
C)表单提交调用 D)jsp:forward调用
三、填空题d
1.用户可以有多种方式请求Servlet,如 浏览器直接调用 , 页面form中提交调用 、 超级连接调用 、 Servlet调用 等。
2.javax.servlet.Servlet接口定义了三个用于Servlet生命周期的方法,它们是init() 、service() 、 destroy() 方法。
3.一般编写一个Servlet就是编写一个 HttpServlet 的子类,该类实现响应用户的 POST 、 GET 、 PUT 等请求的方法,这些方法是 doPost 、doGet 和 doPut 等doXXX方法。
5.Servlet中使用Session对象的步骤为:调用 HttpServletRequest.getSession() 得到Session对象,查看Session对象,在会话中保存数据。
6.Servlet运行于__服务器___端,与处于客户端的___Applet____相对应。
7.当Server关闭时,__Servlet___就被销毁。
8.使用Servlet处理表单提交时,两个最重要的方法是_Post__和__Get__。
9.Serlvet接口只定义了一个服务方法就是_Service()_。
四、简答题
1.试述Servlet的生命周期。
2.MVC是三层开发结构,这三个字母分别代表什么?简述一下其内涵。
7 编程题
1、设计一个登陆页面login.html,其功能为输入用户名,当点击登陆时,在do_login.jsp中实现对其的问候。效果图如下:(当输入wang,10后显示结果)
2、设计两个页面,一个实现九九乘法口诀表的,一个实现获得系统当前时间(时间精确到时分)。使用文件包含实现如下页面。
3. 编写一个login.htm文件,让用户输入用户名和密码,然后使用login.jsp程序来处理用户注册页面。如果用户输入数据不符合要求,则显示“登录失败!”的消息和“重新登录”的超链接,点击“重新登录”超链接能进入登录页面login.htm。如果用户输入数据符合要求,则显示“登录成功!”的消息。
4. 编写一个显示“Welcome To Servlet!”的servlet,并将其配置之后执行该servlet,运行结果如图所示。要求写出servlet类和相关的配置文件。
5. 编写一个计算圆的周长和面积的JavaBean和一个调用该JavaBean的JSP程序,实现对指定半径的圆的周长和面积的输出。页面如图:
6. 编写一个用户登录页面login.jsp,登录成功跳转到welcome.jsp页面,如图所示。
编程要求如下:
(1) 按所示图片完成login.jsp页面的<form>表单的代码编写。
(2) 完成登录信息的User类的JavaBean的代码编写。
(3) 使用Servlet处理用户登录的请求处理doPost()实现。
(4) 按所示图片完成登录成功的welcome.jsp页面的代码编写。
, Java Web应用开发复习题
1 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
二、简答题
1、当客户端向服务器上的某一个JSP页面发起请求,此时服务器是如何处理用户的这个请求并发送回响应内容的?(可以文字描述)
2 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)<jsp:param> B)<jsp:plugin>
C)<jsp:useBean> D)<jsp:javaBean>
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.<jsp:useBean id="bean的名称" scope="bean的有效范围" class="包名.类名"/>动作标记中,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)不确定
三、填空题
1.JSP页面中,输出型注释的内容写在 “<!--” 和 “-->” 之间。
2.Page指令的属性Language的默认值是_Java____。
四、简答题
1.include标记与include动作标记有什么区别?
2.在<%!和%>之间声明的变量和在<%和%>之间声明的变量有何区别?
3.请说出一个JSP页面的基本组成。
3 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)out.print( ) B)out.newLine( )
C)out.println( ) D)out.write( )
8.out对象是一个输出流,其输出换行的方法是(B)
A)out.print( ) B)out.newLine( )
C)out.println( ) D)out.write( )
9.out对象是一个输出流,其输出不换行的方法是(A)
A)out.print( ) B)out.newLine( )
C)out.println( ) D)out.write( )
10.Form表单的method属性能取下列哪项的值
A)submit B)puts
C)post D)out
11.能在浏览器的地址栏中看到提交数据的表单提交方式是
A)submit B)get
C)post D)out
12.可以利用request对象的哪个方法获取客户端的表单信息
A)request.getParameter() B)request.outParameter()
C)request.writeParameter() D)request.handlerParameter()
14.JSP页面中request.getParamter(String )得到的数据,其类型是
A)Double B)int
C)String D)Integer
二、填空题
1.out对象的__ out.flush()_____方法,功能是输出缓冲的内容。
2.JSP的__session___对象用来保存单个用户访问时的一些信息。
3.response对象的_sendRedirect(URL url)___方法可以将当前客户端的请求转到其他页面去。
4.当客户端请求一个JSP页面时,JSP容器会将请求信息包装在__request__对象中。
5.response.setDHeader(“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.response.sendRedirect(URL url)方法的作用?
9.是不是所有Web服务目录共用一个application?
10.怎样使用request、session和application对象进行参数存取?
4 使用JavaBean
一、选择题
1.下面哪一项属于工具Bean的用途?(A)
A)完成一定运算和操作,包含一些特定的或通用的方法,进行计算和事务处理。
B)负责数据的存取
C)接受客户端的请求,将处理结果返回客户端
D)在多台机器上跨几个地址空间运行
2.JavaBean可以通过相关jsp动作指令进行调用。下面哪个不是JavaBean可以使用的jsp动作指令?
A)<jsp:useBean> B)<jsp:setProperty>
C)<jsp:getProperty> D)<jsp:setParameter>
3.关于JavaBean,下列的叙述哪一项是不正确的?
A)JavaBean的类必须是具体的和公共的,并且具有无参数的构造器
B)JavaBean的类属性是私有的,要通过公共方法进行访问
C)JavaBean和Servlet一样,使用之前必须在项目的web.xml中注册
D)JavaBean属性和表单控件名称能很好地耦合,得到表单提交的参数
4.JavaBean的属性必须声明为private,方法必须声明为(D )访问类型。
A)private B)static
C)protect D)public
5.JSP页面通过( C )来识别Bean对象,可以在程序片中通过xx.method形式来调用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:setProperty>动作标记可以在JSP页面中设置Bean的属性,但必须保证Bean有对应的什么方法。
A)SetXxx方法 B)setXxx方法
C)getXxx方法 D)GetXxx方法
11.使用格式<jsp:setProperty name="beanid" property="bean的属性" value = "<%= expression %>" />给Bean的属性赋值,expression的数据类型和bean的属性类型( A )。
A)必须一致 B)可以不一致
C)必须不同 D)无要求
14.在JSP页面中使用<jsp:setProperty name="bean的名字" property ="*" />格式,将表单参数为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,必须首先使用 <jsp:useBean> 动作标记在页面中定义一个JavaBean的实例。
8.scope属性代表了JavaBean的作用范围,它可以是page、 request 、session和application四个作用范围中的一种。
四、简答题
1.JavaBean和一般意义上的Java类有何区别?
2.简述值Bean的编写方法,有哪些注意点?
3.如何实现一个Bean的属性与表单参数的关联?
4.如何在页面的程序片中使用Bean?
5.试述request、session和application有效范围的Bean生命周期?
5 数据库访问
一、选择题
1.下面哪一项不是JDBC的工作任务?
A)与数据库建立连接 B)操作数据库,处理数据库返回的结果
C)在网页中生成表格 D)向数据库管理系统发送SQL语句
2.下面哪一项不是加载驱动程序的方法?
A)通过DriverManager.getConnection方法加载
B)调用方法 Class.forName
C)通过添加系统的jdbc.drivers属性
D)通过registerDriver方法注册
7.在JDBC中,下列哪个接口不能被Connection创建。
A)Statement B)PreparedStatement
C)CallableStatement D)RowsetStatement
8.下面是加载JDBC数据库驱动的代码片段:
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){
out.print(e);
}
该程序加载的是哪个驱动?()
A)JDBC-ODBC桥连接驱动 B)部分Java编写本地驱动
C)本地协议纯Java驱动 D)网络纯Java驱动
9.下面是创建Statement接口并执行executeUpdate方法的代码片段:
conn=DriverManager.getConnection("jdbc:odbc:book","","");
stmt=conn.createStatement();
String strsql="insert into book values('TP003', 'ASP.NET','李','清华出版社',35)";
n=stmt.executeUpdate(strsql);
代码执行成功后n的值为 。
A)1 B)0 C)-1 D)一个整数
10.下列代码中rs为查询得到的结果集,代码运行后表格的每一行有几个单元格
while(rs.next()){
out.print("<tr>");
out.print("<td>"+rs.getString(1)+"</td>");
out.print("<td>"+rs.getString(2)+"</td>");
out.print("<td>"+rs.getString(3)+"</td>");
out.print("<td>"+rs.getString("publish")+"</td>");
out.print("<td>"+rs.getFloat("price")+"</td>");
out.print("</tr>");
}
A)4 B)5 C)6 D)不确定
15.查询结果集ResultSet对象是以统一的行列形式组织数据的,执行ResultSet rs = stmt.executeQuery ("select bid,name,author,publish,price from book");语句,得到的结果集rs的列数为
A)4 B)5
C)6 D)不确定
16.下列代码生成了一个结果集
conn=DriverManager.getConnection(uri,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery("select * from book");
下面哪项对该rs描述正确的是
A)只能向下移动的结果集 B)可上下滚动的结果集
C)只能向上移动的结果集 D)不确定是否可以滚动
17.下列代码生成了一个结果集
conn=DriverMadnager.getConnection(uri,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery("select * from book");
下面哪项对该rs描述正确
A)不能用结果集中的数据更新数据库中的表
B)能用结果集中的数据更新数据库中的表
C)执行update方法能更新数据库中的表
D)不确定
18.下列代码生成了一个结果集
conn=DriverManager.getConnection(uri,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery("select * from book");
下面哪项对该rs描述正确( B )
A)数据库中表数据变化时结果集中数据不变
B)数据库中表数据变化时结果集中数据同步更新
C)执行update方法能与数据库中表的数据同步更新
D)不确定
19.下列代码生成了一个结果集
conn=DriverManager.getConnection(uri,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery("select * from book");
rs.first();
下面哪项对该rs描述正确
A)rs.isFirst()为真
B)rs.ifLast()为真
C)rs.isAfterLast()为真
D)rs.isBeforeFirst()为真
21.下列代码生成了一个结果集
conn=DriverManager.getConnection(uri,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery("select * from book");
rs.first();rs. previous();
下面哪项对该rs描述正确
A)rs.isFirst()为真
B)rs.ifLast()为真
C)rs.isAfterLast()为真
D)rs.isBeforeFirst()为真
21.下列代码生成了一个结果集
conn=DriverManager.getConnection(uri,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery("select * from book");
rs.last();rs.next();
下面哪项对该rs描述正确
A)rs.isFirst()为真
B)rs.ifLast()为真
C)rs.isAfterLast()为真
D)rs.isBeforeFirst()为真
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{ Class.forName(" com.mysql.jdbc.Driver ");
}
创建连接的代码如下:
try{ //和数据库建立连接
conn=
DriverManager.getConnection(
" jdbc:mysql: //localhost:3306/booklib","root","");
……
conn.close();
}
catch(Exception e){
out.println(e.toString());
全套毕业设计论文现成成品资料请咨询