一、 填空题(每空 2 分,共 30 分)
1、在 tomcat 上发布 javaweb 应用时的默认目录是__webapps___目录。
2、javaweb 应用的部署描述符是指 web.xml__ 文件。
3、在 tomcat 中访问 helloapp 应用的 login.html 文件时,在浏览器地址栏应写
的 url 为:__http://localhost:8080/helloapp/login.html___。
4、Servlet 容器启动每一个 web 应用时,都会为它创建一个唯一的
___ServletContext__对象,该对象和 web 应用有相同的生命周期。
5、请求转发源组件的响应结果___不会__发送到客户端,包含__会__发送到客
户端。(填“会”或“不会”)
6、jsp 中实现请求转发的标记为:_________。
7、在 JSP 中, request 内置对象代表请求消息, response 内置对象代表
响应消息,___session_内置对象代表会话。
8、如果使用第四类 jdbc 驱动器连接数据库,jar 文件的存放位置为“web 应用
/_WEB-INF /lib_______”。
9、Servlet 容器为每一个 HttpSession 对象分配一个唯一标识符,叫做
___SessionID___。
10、javaweb 在 mvc 设计模式下,___javabean___是模型,___jsp 是视图,
__servlet__是控制器。
二、 选择题(每题 2 分,共 30 分)
1、下面哪一个选项不是 http 响应的一部分?( c )
a) 响应头
b) 响应正文
c) 协议版本号
d) 状态行
2、http 请求及响应的正文部分可以是任意格式的数据,要保证接收方能看得
javax.servlet.http
懂发送方发送的数据,http 协议采用( d )协议来规范正文的数据格式 ?
a) FTP
b) TCP
c) HTTP
d) MIME
3、Servlet API 由哪两个包组成?(两个答案)( ac )
a) javax.servlet
b) javax.servlet.jsp
c)
d) java.servlet
4、一个 servlet 的生命周期不包括( b )方法?
a)
b)
c) service()方法
d) destroy()方法
5、HttpServletRequest 对象的( c )方法能够获取一个表单参数的值:
a) getQuaryString()
b) getPathInfo()
c) getParameter()
init()方法
invalidate()方法
d) getAttribute()
6、下面对 servlet 中重定向说法描述错误的是( d )
a) 使用的是 HttpServletResponse 接口的 sendRedirect()方法
b) 源组件的响应结果不会发送给客户端
c) sendRedirect()方法后的代码仍会执行
d) 源组件和目标组件共享 ServletRequest 对象
7、jsp 指令不包括( c )
a) page 指令
taglib 指令
b)
c)
import 指令
d)
include 指令
8、jsp 中 java 表达式的语法格式为:(a )
a) <%= %>
b) <%! %>
c) <%@ %>
d) <% %>
9、可以执行请求转发的操作是(d )。
jsp 中 response 内置对象的 sendRedirect()方法
标记
RequestDispatcher 对象的 include()方法
RequestDispatcher 对象的 forward()方法
a)
b)
c)
d)
10、( d )内置对象可以处理 jsp 页面运行中的错误或者异常
a) pageContext
b) page
c) session
d) exception
11、下面对 jdbc api 描述错误的是( d )
a) DriverManager 接口的 getConnection()方法可以建立和数据库的连接
b) Connection 接口的 createStatement()方法可以创建一个 Statement 对象
c) Statement 接口的 executeQuery()方法可以发送 select 语句给数据库
d) ResultSet 接口表示执行 insert 语句后得到的结果集
12、JavaBean 的 scope 取什么值可使该 javabean 被多个用户共享,即和 web
应用有相同的生命周期?( d )
a)
b)
c)
d)
13、下面哪个不是 JSP 中和 javabean 相关的标记?( b )
a)
b)
c)
d)
14、以下关于 EL 和 JSTL 说法错误的是?( d )
a)
page
request
session
application
EL 是一种简洁的数据访问语言
EL 表达式基本形式:${var}
JSTL 的全称是 JavaServer Pages Standard Tag Library
JSTL 只有一个 Core 核心标签库
b)
c)
d)
15、所有的 servlet 过滤器类都必须实现( a )接口。
javax.servlet.Filter
a)
javax.servlet.ServletConfig
b)
javax.servlet.ServletContext
c)
d)
javax.servlet.Servlet
三、 编程题(共 40 分)
1、第一个 Servlet1 文件,读取两个请求参数 first 和 second,将其转换为 int 值
后相加,和存放在请求范围内,然后把请求转发第二个 Servlet2.。第二个 Servlet2
文件(url 为 output),向客户输出 Servlet1 计算的结果。根据注释补充下列代
码。(23 分)
public class Servlet1 extends HttpServlet {
public void service(ServletRequest request,ServletResponse response)
throws ServletException, IOException {
//读取两个请求参数,并将其转换为 int 值
Integer.valueOf(request.getParameter("first")).intValue();________(3 分)
second=Integer.valueOf(request.getParameter("second")).intValue();___(3 分)
//将两个数字相加
int sum=first+second;_____(3 分)
request.setAttribute("sum", String.valueOf(sum));______(3 分)
//在 request 对象中添加 sum 属性
_
/*把请求转发给 Servlet2 */
_
RequestDispatcher dispatcher =context.getRequestDispatcher("/output");
dispatcher.forward(request, response);_____(5 分)
ServletContext context = getServletContext();
int first =
int
}
}
}
public class Servlet2 extends HttpServlet {
public void service(ServletRequest request,ServletResponse response)
throws ServletException, IOException {
//读取请求范围内 Servlet1 计算出的和
_ String sum=(String)request.getAttribute("sum");_________(3 分)
//向客户端输出和
PrintWriter out=response.getWriter();
out.print("the sum is "+sum);_________(3 分)
}
2、写一个 JSP 访问 Access 数据库的 user 表,将所有的记录显示出来;ODBC
数据源名为 test,驱动类名为:"sun.jdbc.odbc.JdbcOdbcDriver",连接数据库
的 url 为:"jdbc:odbc:test"。user 表中 name 字段为文本类型,password 为数
字类型。连接数据库代码(6 分),发送查询语句代码(4 分),处理结果集代
码(7 分)(共 17 分)
name password
张三 123
李四 456
王五 789