>
d)>
20.在JavaJDBC编程中,可以使用PreparedStatement接口为特定的SQL命令指定多个参数,此时需要在创建SQL语句时为每个参数各用一个(C)符号为占位符。
(选择一项)
a)*
b)_
c)?
d)%
21.在JSP页面上进行访问控制时,一般会使用JSP的(C)内置对象存储用户信息。
(选择一项)
a)request
b)response
c)session
d)application
22.在JSP的小脚本中,使用以下(C)语句可以使浏览器重定向到另一个页面(选择一项)
b)request.sendRedirect();
d)response.sendRedirect();
23.在JSP中,以下代码功能是保存已注册用户到session后,进入某网页首页index.jsp页面,否则跳到login.jsp页面完成此功能,下划线处可填入的正确代码应是(C)(选择一项)。
<%
…….
If(rs.next()){//如果是已注册用户
UserloginUser=newUser(name,pass);
___________________
____________________
}else{
Response.sendRedirect(“login.jsp”);
}
%>(选择一项)
a)sesstion.save(“login_user”,loginUser);
Response.sendRedirect(“index.jsp”);
b)sesstion.setAttribute(“login_user”,loginUser);
Response.foward(“index.jsp”);
c)sesstion.setAttribute(“login_user”,loginUser);
Response.sendRedirect(“index.jsp”);
d)sesstion.save(“login_user”,loginUser);
Response.foward(“index.jsp”);
24.编写JSP小脚本,实现访问该JSP时,在会话对象中保存int型变量i的有效语句是(D)。
(选择一项)
a)session.setAttribute(i,”I”);
b)session.setParameter(“I”,i);
c)session.setAttribute(newInteger(i),”I”);
d)session.setAttribute(“I”,newInteger(i));
25.给定如下Java代码片段,已知查询语句是:
selectidfromtitle,并且已经获得了相应的结果集对象res。
现在要在控制台上输出title表中id列(存储类型为int)的值,可以填入下划线处的代码是(AC)。
(选择两项)
while(res.next()){
Intid=______
}
a)res.getInt(“id”);
b)res.getInt(0);
c)res.getInt
(1);
d)res.getInt(id);
26.JSP页面包含如下代码,则访问此JSP页面时将输出(B)。
(选择一项)
<%=2+3%>
a)2+3
b)5
c)23
d)不会输出,因为表达式是错误的
27.用户登录的JSP页面上,包含如下代码所示的表单,用户希望提交表单时在地址栏上显示提交的信息,则应该在下划线处填写的代码是(AC)。
(选择两项)
用户名:
密码:
a)get
b)post
c)不填写任何内容
d)以上选项均可
28.B/S结构是随着Internet技术的兴起,对C/S结构的一种改进,而非C/S结构的替代品,B/S结构相比C/S结构也存在一些劣势,体现在(D)。
(选择一项)
a)维护和升级方式复杂
b)可访问用户范围小
c)程序开发复杂
d)很难有丰富界面效果
29.要运行一个有JSP开发的Web项目,如果正确的URL是
http:
//localhost:
8080/news/index.jsp,而运行时在浏览器中输入了
http:
//localhost:
8080/newws/index.jsp,会出现以下(A)结果。
(选择一项)
a)将在IE中提示404错误
b)将在IE中提示500错误
c)将在IE中显示空白页
d)将在IE中提示“系统无法显示网页”
30.在JSP中,page指令的(B)属性用来引入需要的包或类。
(选择一项)
a)extends
b)import
c)language
d)contentType
31.在JSP中需要将1.jsp的请求数据通过2.jsp转发给3.jsp,应该在2.jsp中采用(C)方式实现。
(选择一项)
a)<%request.sendRedirect(“3.jsp”)%>
b)<%response.sendRedirect(“3.jsp”)%>
c)<%request.getRequestDispatcher(“3.jsp”).forward(request,response)%>
d)<%response.sentRedirect(“32.jsp”).forward(request,response)%>
32.HTML表单的首要标记是
(选择一项)
a)GET方法传递的数据对客户端是不可见的
b)GET方法以查询字符串的形式发送,查询字符串长度没有大小限制
c)GET方法对发送数据的数量限制在255个字符之内
d)POST方法传递的数据对客户端是可见的
33.在用户登录JSP页面上,编写了脚本将已登录的用户信息存放到session中,代码
如下所示,那么在其他页面上进行访问控制的代码应是(D)。
(选择一项)
//name和pwd为String类型的数据
Session.setAttribute(“username”,name);
Session.setAttribute(“password”,pwd);
a)if(username==null){
Response.sendRedirect(“login.html”);
}
b)if(username.equals(“”)){
Response.sendRedirect(“login.thml”);
}
c)Stringname=(String)session.getAttribute(“username”);
If(name.equals(“”)){
Response.sendRedirect(“login.html”);
}
d)Stringname=(String)session.getAttribute(“username”);
If(name==null){
Response.sendRedirect(“login.html”);
}
34.在设计Web项目的目录结构时,src目录一般放(D)文件。
(选择一项)
a)html
b)jsp
c)web.xml
d)Java源文件
35.在JSP页面上,以下(C
(选择一项)
36.使用JDBC链接数据库,假定已经获得一个数据库链接,使用变量con来表示,下列语句中能够正确获得结果集的是(AD)。
(选择两项)
a)Statementstmt=con.createStatement0;
ResultSetrs=stmt.executeQuery(“SELECT*FROMTablel”);
b)Statementstmt=con.createStatement(“SELECT*FROMTablel”);
ResultSetrs=stmt.executeQuery0;
c)PreparedStatementstmt=con.prepateStatement0;
ResultSetrs=stmt.executeQuery(“SELECT*FROMTablel”);
d)PreparedStatementstmt=con.prepateStatement(“SELECT*FROMTablel”);
ResultSetrs=stmt.executeQuery0;
37.在JAVA中ArrayList类实现了可变大小的数组,便于遍历元素和随机访问元素,已知获得了ArrayList类的对象bookTypleList,则下列语句中能够实现向列表中添加字符串“小说”的是(C)。
(选择一项)
a)bookTypleList.contains(“小说”);
b)bookTypleList.get(“小说”);
c)bookTypleList.add(“小说”);
d)bookTypleList.remove(“小说”);
38.在Web应用系统中,编写了公共的处理页面为manage.jsp,该页面包含在Web根目录下,那么在Web根目录下的其他页面上引用该页面的代码正确的是(C)(选择一项)
a)<%includefile=“manage.jsp”%>
b)<%!
includefile=“manage.jsp”%>
c)<%@includefile=“manage.jsp”%>
d)
39.在JSP页面中,下列(A)代码能够正确的声明计算乘法的方法。
(选择一项)
a)<%!
Publicintmul(intx,inty){
Returnx*y;
}
%>
b)<%=publicintmul(intx,inty){
Returnx*y;
}
%>
c)<%publicintmul(intx,inty){%>
<%returnx*y;%>
<%}%>
d)<%
Publicintmul(intx,inty){
Returnx*y;
}
%>
40.在Java中,较为常用的JDBC驱动方式是(A)和(D)。
(选择两项)
a)JDBC-ODBC桥连
b)mssqlserver驱动程序
c)纯ODBC驱动程序
d)纯Java驱动程序
二.问答题,共10道,每道4分
1.简述JSP工作原理?
JSP本质就是Servlet。
a.第一次访问jsp时该jsp被进行翻译,将jsp转换为servlet的java源代码
b.对servlet源码进行编译,生成class字节码
c.执行serlvet.service()/doGet()/doPost()方法
d.Jsp所产生的servlet在javaweb应用中全局有且只有唯一的对象,servlet是单例多线程的,因此servlet中不允许出现状态(即绝对不允许出现属性)。
JSP/Servlet对象在web应用关闭或重置的时候被销毁。
2.jsp主要内置对象有哪几种?
Request
Response
Session
Application
pageContext
page
out
exception
config
3.在Servlet里,如果从session的“list”属性中获取属性值,请写出代码?
Objectlist=“list”);
4.请简要说明Servlet对象的生命周期?
a.加载,在第一次请求的时候servlet被加载
b.在第一次请求加载后,调用init()方法对servlet进行初始化
c.根据客户请求的类型不同,调用doGet/doPost方法处理客户的请求
d.销毁,web应用关闭或者重启的时候,servlet被销毁,调用destroy()方法
5.请简述include>标签与<%@include%>指令的区别?
前者为动态引用,后者为静态引用。
include>是动态引用,例如a.jspincludeb.jsp,web容器会分别将a.jsp和b.jsp翻译成servlet并执行,将输出的字符流进行合并,jsp:
include是将两个jsp运行后的输出流进行合并,其中不产生任何额外的java文件。
a.jspincludefile=”b.jsp”>
b.jsp你好
执行后的结果是:
你好
<%@include%>静态引用则是将b.jsp所生成的servlet的源码合并到a.jsp的源码中,然后运行合并后的servlet文件输出结果。
在日常的项目应用中,我建议使用include>,jsp:
include不存在编码不同的问题。
6.请列举至少三种EL表达式的内置对象,并说明其作用?
request