温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
JSP
内部
测试
笔试
答案
《使用JSP/Servlet/Ajax技术开发新闻发布系统》
内部测试-笔试试卷
一、选择题(共25题,每题2分,满分100分)
1) JSP表达式语言可用于在网页上生成动态内容并代替JSP脚本元素,JSP表达式语言的语法是( )。
A. {EL expression}
B. ${EL expression}
C. @{EL expression}
D. &{EL expression}
2) 在Servlet中有如下代码段:
...
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
RequestDispatcher dis;
_____________________________;
dis.forward(request,response);
}
...
那么能够正确填写在横线处的选项是( )。
A. dis = response.getRequestDispatcher("error.jsp");
B. dis = request.getRequestDispatcher("error.jsp");
C. dis = request .RequestDispatcher("error.jsp");
D. dis =new RequestDispatcher("error.jsp");
3) 阅读以下JSP中的代码片段:
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>车辆信息</title>
</head>
<body>
<jsp:useBean id="autoBean" class=" AutoBean"
scope="request" />
品牌:____________<br />
</body>
</html>
已知在AutoBean中定义了一个autoBrand属性,用于表示车辆所属的品牌,下列选项中能够正确填写在横线处的是()
A. autoBean. autoBrand
B. ${ autoBean. autoBrand}
C. &{ autoBean. autoBrand}
D. {autoBean["autoBrand"]}
4) 下面关于Servlet生命周期的描述不正确的是( )。
A. Servlet实例由Servlet容器负责加载和创建
B. Servlet容器调用init()方法初始化Servlet,每加载一次Servlet都会执行一次init()方法
C. Servlet初始化完毕后,就处于能响应请求的就绪状态
D. Servlet的destroy()方法指明哪些资源可以被系统回收
5) 下列选项中关于HttpSession描述错误的是()。
A. HttpSession通过HttpServletRequest对象获得
B. HttpSession可以用来保存数据,并实现数据的传递
C. HttpSession被创建后,将始终存在,直到服务停止
D. 调用HttpSession的invalidate()方法,可以删除创建的HttpSession对象及数据
6) 在Java EE中,如果req是HttpServletRequest的实例,要通过req获取已经存在的HttpSession对象,如果不存在就创建一个HttpSession对象,下面选项中( )可以实现。(选2项)
A. req.getSession()
B. req.getSession(false)
C. req.getSession(true)
D. req.createSession()
7) JSP标准动作不包括( )。
A. <jsp:forward />
B. <jsp:forEach />
C. <jsp:useBean />
D. <jsp:setProperry />
8) 在Java EE中,关于创建HttpServletRequest对象的说法正确的是( )。
A. 从request获取传入的参数,可以调用getParameter方法
B. 由Java Web应用的Servlet或JSP组件负责创建,当Servlet或JSP组件响应HTTP请求时,先创建HttpServletRequest对象
C. 由程序员通过编码形式创建,以传递请求数据
D. 以上都不对
9) 在Java Web 应用程序中,test.jsp页面中有如下一行代码:
<jsp:useBean id="user" scope="_____" type="com.UserBean "/>
要使user对象可以作用于整个Web应用,下划线中应填入()。
A. page
B. request
C. session
D. application
10) 如果想要在JSP中使用user包中的User类,则以下写法正确的是( )。
A. <jsp:useBean id="user" class="user.User" scope="page"/>
B. <jsp:useBean class="user.User.class" />
C. <jsp:useBean name="user" class="user.User"/>
D. <jsp:useBean id="user" class="User" import="user.* "/>
11) 在JSP页面上使用JSTL标签时,应使用JSP指令( )导入标签库描述符文件。
A. page
B. taglib
C. tag
D. lib
12) 在Java Servlet生命周期中,以下( )方法会被多次执行。
A. init()
B. service()
C. close()
D. destroy()
13) 在Java Web应用开发中,已知在web.xml文件中正确配置了Servlet,若想将所有Web请求都映射到此Servlet,则需要在<url-pattern>标签内填写的内容是( )。
A. *.html
B. *.jsp
C. /*
D. *
14) JSP标准动作中的useBean动作可将JavaBean嵌入JSP页面,useBean动作的scope属性指定了Bean的范围,下列不属于useBean动作范围选项的是()。
A. page
B. request
C. response
D. session
15) 在Java Web应用开发中,编写JSP包含如下代码,JSP执行后在HTML页面上的输出结果为()。
<c:set var="variable" value="${80+8}" scope="session"/>
variable:<c:out value="${variable}"/>
<c:remove var="variable" scope="session"/>
<br>
variable:<c:out value="${variable}"/>
A. variable:88
variable:NULL
B. variable:80+8
variable:
C. variable:88
variable: 88
D. variable:88
variable:
16) 使用response 对象进行重定向时,使用的是( )方法。
A. getRequestDispatcher()
B. forward()
C. sendRedirect()
D. setRequestDispatcher()
17) 在Java Web应用程序中,下列( )选项中的代码能够正确实现使用数据源(DataSource)获取数据库连接对象(数据源名称为dsname)。
A. DataSource soure = new DataSource( ) ;
Connection conn = source.getConnection( );
B. Context source = new InitalContext( );
Connection conn = source.getConnection( );
C. Context ctx = new InitalContext( );
DataSource ds = (DataSource) ctx.lookup("java:comp/env/dsname");
Connection conn = ds.getConnection( );
D. Context ctx = new InitalContext ( );
DataSource ds = (DataSource) ctx.lookup("dsname");
Connection conn = ds.getConnection( );
18) 在Java EE中,在web.xml中有如下代码段:
<servlet>
<init-param>
<param-name>listOrders</param-name>
<param-value>com.mycompany.myactions.ListOrdersAction</Param-value>
</init-Param>
</servlet>
其中,省略号表示省略了一些代码。在Servlet中( )把初始化参数listOrders的值:com.mycompany.myactions.ListOrdersAction取出来。
A. 使用Servlet的getInitParameter("listOrders")方法
B. 使用ServletContext的getInitParameter("listOrders")方法
C. 使用ServletConfig的getInitParameter("listOrders")方法
D. 使用ServletRequest的getInitParameter("listOrders")方法
19) 下面关于Java中会话跟踪的说法错误的是( )。
A. HTTP协议是无状态的,所以服务器需要用会话跟踪技术来分辨每个客户
B. 服务器为每个会话分配了一个ID作为唯一标识
C. session由客户端创建,我们再用request.getSession()来获得HttpSession对象
D. 使用会话跟踪可以实现诸如用户登录和购物车此类的功能
20) Servlet可以在服务器端处理客户请求,当用户提交请求后可以借助HttpServletRequest对象的( )方法获取客户端请求数据
A. setAttribute()
B. getAttribute()
C. setParameter()
D. getParameterValues()
21) 以下选项关于GET和POST的区别描述不正确的是( )。
A. GET提交数据在地址栏内显示,不安全;而POST则不显示,相对安全
B. 采用GET或POST方式提交数据,理论上都没有长度的限制
C. GET请求的页面可以设置为书签或使用邮件发送;而POST不可以
D. 由于GET方式相对于POST方式不安全,所以编写程序时,没有明确要求,一般都采用POST方式提交数据
22) 以下选项关于JNDI描述不正确的是( )。
A. 在Web应用中,DataSource是由Web容器提供的,因此需要通过JNDI来获得DataSource对象
B. 使用JNDI和数据源时,需要导入的包包括:javax.naming.Context、javax.naming.InitialContext、javax.naming.NamingException及javax.sql.DataSource
C. Javax.naming.Context提供了查找JNDI Resource的接口。可以通过如下方式获取数据源:
Context ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup("jdbc/student");
D. 使用JNDI获得数据源,需要在context.xml文件中的<Context>节点中添加<Resource>信息;并且在web.xml文件中的<web-app>节点下添加<resource-ref>信息
23) 在web.xml中有如下代码:
<web-app>
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>jbit.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> LoginServlet </servlet-name>
<url-pattern>/ LoginServlet </url-pattern>
</servlet-mapping>
</web-app>
下列选项描述正确的是( )。
A. 在<servlet-mapping>中的<url-patten>表示用户请求访问Servlet的URL
B. Servlet容器会根据<servlet-class>查找到与其对应的<servlet-name>
C. <servlet>中的<servlet-name>内容与<servlet-mapping>中的<servlet-name>内容可以不一致
D. 以上描述都不正确
24) 在Web 项目的目录结构中,web.xml文件位于( )中。
A.src目录
B.文档根目录
C.META-INF目录
D.WEB-INF目录
25) 在JSP文件中,有如下代码:
<%
List list = new ArrayList();
for(int i = 0; i < 10; i++)
list.add("" + i);
session.setAttribute("numbers", list);
%>
<body>
<c:set var="numbers" value="test"/>
<c:forEach var="number" items="${numbers}">
<c:out value="${number}" />
</c:forEach>
</body>
页面显示的内容是()。
A. 0 1 2 3 4 5 6 7 8 9
B. test
C. 0 1 2 3 4 5 6 7 8 9 test
D. test 0 1 2 3 4 5 6 7 8 9
26) 以下选项中不属于Servlet生命周期的是( )。
A. 加载和实例化
B. 初始化
C. 服务
D. 保持
27) 在Java EE中,User类提供了username属性,在index.jsp中经过表单提交信息至user.jsp页面,如果提交的信息为“ruby”则user.jsp页面中最终的显示结果为:()
index.jsp中有如下代码段:
<form action="user.jsp" method="post">
<input type="text" name="username">
<input type="submit" value="提交">
</form>
user.jsp中有如下代码段:
<body>
<jsp:useBean id="user" class="cn.prd.User"></jsp:useBean>
<jsp:setProperty name="user" property="username" param="username"/>
<jsp:getProperty name="user" property="username"/>
</body>
A. ruby
B. null
C. RUBY
D. 页面无显示
28) 在Java中,下列关于重定向和转发的描述正确的是( )。(选2项)
A. 转发对应的代码为:rquest.getRequestDispatcher(url).forward(request,response);
B. 重定向对应的代码为:request.sendRedirect(url);
C. 重定向在用户的浏览器端被处理。
D. 转发后,浏览器的地址栏内容会发生改变。
29) 在Ajax中,下列哪个函数用于建立服务器的连接?
A. send(content)
B. open(method,URL,async)
C. setRequestHeader(header,value)
D. Onreadystatechange()
30) 在Ajax中,下列哪个函数指定XMLHttpRequest 对象的回调函数?
A. onreadystatechange ()
B. readyState()
C. redirectHttp()
D. XMLHttpRequest ()
31.声明SmartUpload 对象的正确方法是( )。
A.SmartUpload su=new SmartUpload () ;
B.SmartUpload su= SmartUpload.newInstance();
C.SmartUpload su= SmartUpload.initialize();
D.SmartUpload无需实例化,可直接使用
32.下面不属于分页实现步骤的是( )。
A.确定每页显示的数据数量
B.计算总页数
C.编写查询SQL语句
D.使用下拉列表显示页数
33.使用SmartUpload 实现文件上传时,关于实现对上传文件类型限制的方法描述正确的
是( )。
A.使用setAllowedFilesList 方法可以指定允许上传的文件类型列表
B.使用setDeniedFilesList 方法可以指定允许上传的文件类型列表
C.使用setAllowedFilesList 方法可以指定禁止上传的文件类型列表
D.使用setDeniedFilesList 方法可以指定禁止上传的文件类型列表
34.使用SmartUpload 实现文件上传时,对于文件大小控制描述正确的是( )。
A.使用setMaxFileSize方法可以指定允许上传总文件的大小
B.使用setTotalMaxFileSize 方法可以指定允许上传总文件的大小
C.使用setMaxFileSize方法可以指定允许上传的单个文件的大小
D.使用setTotalMaxFileSize 方法可以指定允许上传的单个文件的大小
35.下面对于分层模式的解释描述错误的是( )。
A.将解决方案的组件分隔到不同的层中
B.每一层中的组件应保持内聚性
C.每一层都应与它下面的各层保持松耦合
D.每一层都应与它下面的各层保持高耦合
36.三层架构是分层模式中最常见的类型,那么在三层架构中不包含( )。
A.数据访问层
B.业务逻辑层
C.通信层
D.表示层
37.下面对于层与层关系的描述错误的是( )。
A.表示层接受用户的请求,根据用户的请求去通知业务逻辑层
B.业务逻辑层收到请求,根据请求内容执行数据库访问,并将访问结果返回表示层
C.数据访问层收到请求后便开始访问数据库
D.各个层之间独立存在,不相互依赖
38.在进行三层开发时,需要遵循一定的指导原则,下面说法错误的是( )。
A.上层依赖其下层,依赖关系可以跨层
B.下一层不能调用上一层
C.下一层不依赖上一层
D.在上一层中不能出现下一层的概念
39.在某个JSP 页面中存在这样一行代码:<%="2"+"4" %>,运行该JSP 后,以下说
法正确的是( )。
A.这行代码没有对应的输出
B.这行代码对应的输出是6
C.这行代码对应的输出是24
D.这行代码将引发错误
40.与page指令<%@ page import="java.util.*,java.text.*" %>等价的是( )。
A.<%@ page import="java.util.* " %>
<%@ page import="java.text.*" %>
B.<%@ page import="java.util.*" import="java.text.*"%>
C.<%@ page import="java.util.* " ;%>
<%@ page import="java.text.*" ;%>
D.<%@ page import="java.util.* ; java.text.*"%>
41.下列选项中,( )是正确的表达式。
A.<% String s= "hello world";%>
B.<%="hello world"; %>
C.<%="hello world" %>
D.<%! "hello world" %>
42.如果请求页面中存在两个单选按钮(假设单选按钮的名称为sex),分别代表男和
女,该页面提交后,为了获得用户的选择项,可以使用以下( )方法。
A.request.getParameter(sex);
B.request.getParameter("sex");
C.request.getParameterValues(sex);
D.request.getParameterValues("sex");
43.JSP内置对象request 的getParameterValues()方法的返回值是( )。
A.String[]
B.Object[]
C.String
D.Object
44.对于转发与重定向的描述错误的语句是( )。
A.重定向是在客户端发生作用,通过请求新的地址实现页面转向
B.使用转发时由于是服务器内部控制权的转移,因而地址栏中的URL没有变化
C.使用重定向时可以在地址栏中看到转向后的URL
D.转发与重定向都可以实现在页面跳转,因而没有区别
45.为了避免服务器的响应信息在浏览器端显示为乱码,通常会使用( )语句重新
设置字符编码。
A.response.setContentType()
B.response.setCharacterEncoding()
C.response.setPageCoding()
D.response.setCharset()
46.在JSP中使用JDBC语句访问数据库,正确导入SQL类库的语句是( )。
A.<%@ page import="java.sql.*" %>
B.<%@ page import="sql.*" %>
C.<%page import="java.sql.*" %>
D.<%@ import="java.sql.*" %>
47.在JDBC API 中所提供的( )类的职责是:依据数据库的不同,管理不同的JDBC
驱动程序。
A.DriverManager
B.Connection
C.Statement
D.Class
48.下面( )技术不是Ajax的常用技术。
A.JavaScript
B.XML
C.Swing
D.HTML
49.当XMLHttpRequest 对象的状态发生改变时调用yourCallback 函数,下列选项中正确的是( )。
A.xmlHttpRequest. yourCallback = onreadystatechange;
B.xmlHttpRequest.onreadystatechange (yourCallback);
C.xmlHttpRequest.onreadystatechange (new function(){yourCallback });
D.xmlHttpRequest.onreadystatechange = yourCallback;
50.关于XmlHttpRequest 对象的五种状态,下列说法正确的是( )。
A.1表示新创建
B.2表示初始化
C.3表示发送数据完毕
D.4表示接收结果完毕
《使用JSP/Servlet/Ajax技术开发新闻发布系统》
内部测试-笔试试卷答案
一、选择题(50*2=100分)
1. B 2.B 3. B 4.B 5.C
6. AC 7. B 8. A 9.D 10. A
11. B 12. B 13. C 14.C 15.D
16. C 17. C 18. C 19.C 20.D
21. B 22. C 23. A 24.D 25. B
26. D 27. A 28. AC 29.B 30. A
31. A 32. D 33. AD 34.BC 35. D
36. C 37. B 38. A 39.C 40. A
41. C 42. B 43. A 44.D 45. AB
46. A 47. A 48. C 49.D 50.D
考试时间 100分钟