08计算机《JSP程序设计》作业题
请把各题的答案另外写在一个Word文档中,标明题号,写好答案即可。写上自己的学号姓名,统一发给班长,下周上课,班长用优盘考给我或QQ发给我。
一、填空题
1、在安装Tomcat时,如果系统中已经有其他的应用程序占用了【8080  】端口,则启动Tomcat时会失败。
2、Servlet是服务器端的【  java小程序】,用于响应客户机的请求。在默认情况下,Servlet采用一种无状态的【请求-响应】处理方式。Servlet主要功能是增强Java服务器端功能。
3、Servlet的生命周期主要由3个过程:【init() 】方法功能是服务器初始化Servlet;【  service()        】方法功能是对象调用该方法响应客户的请求;【  destroy()      】方法功能是消灭Servlet对象。
4、编译后的Servlet只被装载【  1    】次,因此,当源程序重新编译后,需要重新启动服务器;同时Servlet 类的修饰符必须为【    public    】
5、Servlet的环境API接口中,ServletConfig接口对象接收【  servlet        】特定的初始化参数,而ServletContext接收【  webapp      】初始化参数。
6、表单提交有2种方式。【  get      】方式是表单的默认方式,并且次提交方式的总数据量不能超过2KB,否则提交失败。利用【 post        】方法需要在method方法中声明,并且它没有容量方面的限制。
7、在Servlet中,通过HttpServletRequest接口的方法来获得来自【客户和服务器】端的一些数据;HttpServletReponse接口的方法来【发出响应】,它的【 sendredirect  】方法可以立即使网页重定向,它的【 setintheader  】方法可以使网页定时刷新,它的【 secdheader  】方法可以定时使网页重定向。8、javax.servlet.RequestDispatcher接口有两个最重要的的方法:【 forward  】和【 include        】,它们用来实现对页面的动态转发或者包含。
9、在一个JSP页面中,主要分为三种元素:【编译指令】、【操作指令】和【  JSP代码】;编译指令包括如下【page指令】、【include指令】、【taglib指令】;操作指令包括【jsp:include  】、【jsp:forward 】、【jsp:param 】、【变量和方法】、【代码块】等。
10、在JSP页面中可以获得的主要的7个隐含对象变量如下:【out对象】、【response对象】、【request对象】、【application对象】、【session 对象】、【cookie对象】、【pageContext对象】。
11、JavaBean是一种【软件组件】模型,它和其它软件对象相互作用,决定如何建立和重用软件组件。
JavaBean 具有4个特征:【独立性】、【可重用性】【在可视化开发工具中使用】及【状态可以保存】。
12、JSP中专门提供三个页面指令来与JavaBean交互,分别是【  jsp:usebean 】指令、【jsp:serproperty 】指令和【jsp:getProperty】指令。
13、在实际使用中,有几种常用的Bean,其中【页面】Bean为JSP保留数据,不实现应用程序流中的任何功能。【请求】Bean是在request范围内共享数据的Bean。【会话】Bean在Session范围内共享数据。【应用程序】Bean 在application范围内共享数据。
14、设计模式针对特定的问题提出的解决方案,常用的面向对象的设计模式有如下4种,【Factory】模式建立的系统的扩充性非常好。【Singleton】模式被用来限制对象的创建,不能有子类,构造函数是私有的。【MVC架构】模式将架构分为View层、Model层和Controller层。
15、java.sql包中提供了多种JDBC API,这些类和接口可以提供构造【SQL语句】、连接【关系型数据库】、执行【SQL 语句】并获取【查询结果】等功能。
16、在JSP中,加载Oralce的JDBC驱动程序的语句为【Class.forName (”oracle.jdbc.driver.OracleDriver”)】。使用SUN公司的JDBC—ODBC桥驱动程序的语句为【Class.
forName(“sun.jdbc.odbc.JdbcOdbcDriver”)】。【Connection 】对象用于建立与数据库之间的连接,【  Statement  】对象用于将SQL语句发送到数据库中,【ResultSet  】对象保存SQL语句执行的结果,17、数据持久化是指将从数据库取出的数据进行封装,放在一个【对象】里,目的是为了以后的使用更加高效,
不必每次都从数据库里取数据。
18、ORM实现了Java应用中的对象到关系数据库中的表的自动的【持久化】,使用元数据描述对象与数据库间的映射。
19、持久化对象实际上必须对应数据库中的【实体】,与纯Java对象是有区别的。
20、XML数据岛技术可以有效的将【显示】和【数据】分离
二、选择题
1.J2EE 中,【 A        】)类的【】方法用于创建对话。
A. HttpServletRequest、getSession
B. HttpServletResponse、newSession
C. HtttpSession、newInstance
D. HttpSession、getSession
2.在Servlet里,能实现重定向的方法有【  E      】。
A.运用javax.servlet.http.HttpServletRequest接口的sendRedirect方法
B.运用javax.servlet.http.HttpServletResponse接口的sendRedirect方法
C.运用javax.servlet.RequestDispatcher接口的forward方法
D.运用javax.servlet.ResponseDispatcher接口的forward方法
E.正确答案是B和C
3.利用MyEclipse开发Servlet,下列说法正确的是【  E      】。
A. MyEclipse可自动产生l
B. MyEclipse不能自动产生l,需要手工编写
C.可利用MyEclipse自带的Tomcat作为Servlet容器
D. MyEclipse没有自带Tomcat,需要自己安装配置。
E.正确答案是A和D
4.编写Servlet 的doPost方法时,需要抛出异常为[  A    ]。
A.ServletException, IOException
B.ServletException, RemoteException
C.HttpServletException, IOException
D.HttpServletException, RemoteException
5.有关会话跟踪技术描述不正确的是【  BC      】。
A.Cookie是Web服务器发送给客户端的一小段信息,客户端请求时,可以读取该信息发送到服务器端
B.关闭浏览器意味着会话ID丢失,但所有与原会话关联的会话数据仍保留在服务器上,直至会话过期
C.在禁用Cookie时可以使用URL重写技术跟踪会话
D.隐藏表单域将字段添加到HTML表单并在客户端浏览器中显示
6.以下【 A        】可用于检索session属性userid的值。
A.session. getAttribute (“userid”);
B.session. setAttribute (“userid”);
7.有关Servlet的生命周期说法正确的有【    E    】。
A.Servlet的生命周期由Servlet实例控制
B.init()方法在创建完Servlet实例后对其进行初始化,传递的参数为实现ServletContext接口的对象
C.service()方法响应客户端发出的请求
D.destroy()方法释放Servlet实例
E.正确答案是C和D
8.在WEB应用程序的目录结构中,在WEB-INF文件夹外的文件为【  A      】。
A..jsp文件
C..jar文件
l文件
9.给定一个Servlet的代码片段如下: ( A )
Public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
____      __
out.println(“hi kitty!”);
out.close();
}
运行次Servlet时输出如下:
hi kitty!
则应在此Servlet下划线处填充如下代码。
A.PrintWriter out = Writer();
B.PrintWriter out = Writer();
C.OutputStream out = OutputStream();
D.OutputStream out = Writer();
10.在 J2EE中,便用 Resultset对象的 next()方法移动光标时,如果超过界限,就会抛出异常,则该异常通常
是【 C        】。
A.InterruptedExceptlon
B.AlreadyBoundExceptlon
C.SQLException
D.NetExcePtlon
11.在J2EE中,对于Httpservlet类的描述,错误的是【  A  】。
A.我们自己编写的Servlet继承了Httpservlet类,一定需覆盖doPost或者doGet
B.HttpServlet类扩展了GenericServlet类,实现了GenericServlet类的抽象方法
C.HttpServlet类中处理客户请求和响应时所用的两个接口是:HttpServletRequest和HttpServletResponse.
D.我们自己编写的servlet继承了Httpservlet类,一般只需要覆盖doPost方法,不必覆盖servive()方
法,因为一个service()方法会调用doPost或者doGet方法
12.Servlet中HttpServletResponse的【 C  】方法用来把一个Http请求重定向到另外的URL。
A. sendURL()
B. redirectURL()
C. sendRedirect()
D. redirectResponse()
13.在J2EE中,在l中,有如下代码:
<session - config>
<session - timeout>30</session - timeout>
</session - config>
上述代码定义了默认的会话超时时长,时长为30【  C      】。
A.毫秒                B.秒                C.分钟              D.小时
14.Servlet 可以在以下【    A    】三个不同的作用域存储数据。
A.请求、会话和上下文        B.响应、会话和上下文
C.请求、响应和会话        D.请求、响应和上下文
15.Servlet程序的入口点是:【  A    】
A.init()        B.main()        C.service()        D.doGet()
16.在HTTP协议中,用于发送大量数据的方法是【  B    】。
A.get                B.post                C.put                D.options
17.在JSP中,只有一行代码:<%=A+B%>,运行将输出(  D)。(选择一项)
A.A+B
B.AB
C.113
D. 没有任何输出,因为表达式是错误的
18.在JSP中,<%=”1+4” %>将输出【    A    】。(选择一项)
A.l+4
B.5
C.14
D.不会输出,因为表达式是错误的
19.在JSP中,page指令的【    B  】属性用来引入需要的包或类。
B.import
C.languge
20.给定以下JSP代码片段,有2个客户依次浏览该JSP;且每个客户只浏览一次,第2个客户会看到浏览器显示【  B    】。
<%int x = 1; %>
<%!int x = 10; %>
X =< %= ++x%>
A.X = 1            B.X = 2          C.X = 10                      D.X = 11
21.从HTTP请求中,获得请求参数,应该调用【  B    】。
B.session对象的getAttribute()方法  D.session对象的getParameter()方法
22.下面关于JSP作用域对象的说法错误的是【  C    】。
B.session对象可以保存用户信息
c.application对象可以被多个应用共享  D.作用域范围从小到达是request、session、application
23.在JSP页面中,保存数据的范围由小到大依次是【  C    】。
A. pageContext,request,application,session
B.pageContext,application,session,request
C.pageContext,request,session,application
D.pageContext,session,request,application
24. 在JSP页面中,等效于HttpServletResponse的内置对象是【  B      】。
A.out
25. 在JSP页面中,能够完成输出操作的内置对象是【  A  】。
A.out
26.在JSP页面中,正确引入JavaBean的是【    C    】。
a)<%jsp: useBean id =”myBean” scope =”page” class=”pkg.MyBean” %>
b)<jsp: useBean name =”myBean” scope =”page” class=”pkg.MyBean” >
c)<jsp: useBean id =”myBean” scope =”page” class=”pkg.MyBean” />
d)<jsp: useBean name =”myBean” scope =”page” class=”pkg.MyBean” />
27.关于<jsp:include>, 下列说法不正确的是【 D      】。
a)它可以包含静态文件
b)它可以包含动态文件
c)当它的flush属性为true时,表示缓冲区满时,将会被清空
d)它的flush属性的默认值为true
28.在JSP中,对<jsp:setProperty>标记描述正确的是【  C      】。
a)<jsp:setProperty>和<jsp:getProPerty>必须在一个JSP文件中搭配出现
b)就如同session.setAttribute()一样,来设计属性/值对
c)和<jsp:useBean>动作一起便用,来设置bean的属性值
d)就如同request.setAttribute()一样,来设置属性/值对
29. 在JSP中,只有一行代码:${1+2},运行将输出【  B    】。
A.  1+2
B.  3
C. null
D. 没有任何输出,因为表达式是错误的
30.编写自定义标签处理类后,需要编写一个【  B    】去描述。
A .tag文件
B .tld文件      C.dtd文件        D. .xml文件
31.在J2EE中,标签库中文件(*.tld)存放在【  A    】目录下。
a) WEB—INF
b) WEB—INF/tags
c) WEB—INF/classes
d) WEB—INF/lib
32.核心标签库中,用来实现循环功能的标签是【  D      】。
A. <c:if>
B. <c:for>
C.<c:while>
D.<c:foreach>
33.以下【      D  】个参数不属于<c:foreach>标签:
A. var
B. begin
C. end
D. delims
34.以下哪个方法不是TagSupport类的方法:【    D      】。
A. doPost()
B. doStartTag()
C. doEndTag()
D.doAfterBody()
35.如下代码,执行效果为【  C      】。
<c:set var="a" value="123" />
<c:out value="${a}"/>
jsp帮助文档<c:out value="a"/>
A.123  123
B. a    123
C.  123  a
D.    A    a
36.以下【  C        】个标签实现了switch功能。
A. <c:if>
B. <c:switch>
C. <c:choose>与<c:when>
D. <c:case>
37.EL表达式,${10 mod 3},执行结果为:【B  】
A . 10 mod 3            B.    1      C.    3      D. null
38.以下代码执行效果为【      B  】:
<c:forEach var  = "i" begin = "1" end = "5" step = "2">
<c:out value="${i}"/>
</c:forEach>
A.1 2 3 4
B.  1 3 5
C. i i i
D. 15
39.以下哪句代码可以正确导入核心标签库:【    D      】。
A. <% page import = “c”%>
B. <% page prefix = “c” uri = “/WEB-INF/c.tld”%>
C. <% taglib prefix = “c” import = “/WEB-INF/c.tld” %>
D. <% taglib prefix = “c” uri = “/WEB-INF/c.tld”%>
40.在WEB应用程序的目录结构中,在WEB-INF文件夹中的lib目录是放【    C  】文件的(只选一项)。
A..jsp文件
C..jar文件
l文件
三、简答题
1、简述Servlet和JSP的关系
答:JSP是以另外一种方式实现的Servlet,Servlet是JSP的早期版本,在JSP中,更加注重页面的表现,而在Servlet中则更注重业务逻辑的实现。
2、简述Servlet的生命周期
答:Servlet的生命周期主要由3个过程组成,init()方法是服务器初始化Servlet,service()方法是
初始化完毕,Servlet对象调用该方法响应客户的请求,destroy()方法是调用该方法消灭Servlet对象。
3、简述JSP的执行过程
答:①、首先客户端发出request请求;
②、JSP container将JSP转译成servlet源代码;
③、将产生的servlet的源代码经过编译后,并加载到内存执行;
④、把结果response到客户端;
4、synchronized关键字的功能?
答:功能是当前一个用户在执行该方法的时候,其他的拥护必须等待,直到该用户完成操作。
5、out对象有什么功能?out.print和 document.write 有什么区别?
答:功能:把信息回送到客户端的浏览器中。
区别:out.print是JSP代码,被服务器解释执行,在数据库中保存信息。
Document.write是JavaScript代码,被客户端浏览器解释执行,只是直接输入要打印的内容,没有保存信息。
6、applciation对象有什么特点?与session对象有什么联系和区别?
答:站点所有的用户公用一个application对象,当站点服务器开启的时候,application就被创建,直到网站

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。