Java考试题2

萌到你眼炸
930次浏览
2021年01月11日 17:26
最佳经验
本文由作者推荐

高中数学几何公式-少年先锋队歌

2021年1月11日发(作者:谭延闿)


选择题(没有注明多选,则为单选),每题2分
1.下面哪个不是Form的元素? ( )
A. Input B: textarea C: select D: table
2. HTML页面中,下面哪个表示空格( )
A.& B. C.© D.<
3.中的align属性是什么含义? ( )
A. 加粗 B 斜体 C 对齐方式 D 边框样式
4.单选按钮是下列哪一个? ( )
A.
B.
C.
D.
5.下边哪个不是JSP内置对象? ( )
A. Session B request C cook D out
6.下边哪个是JSP指令标记( )
A.<%……%>
B. <%!……%>
C. <%@……%>
D.<%=……%>
7.当在JSP文件中要使用到ArrayList对象时,应在JSP文件中加入以下哪个语句?( )
A.
B.
C. <%@ page import=”.*” >
D.<%@ page include=”.*” >
8.关于JavaBean的说法,哪个是正确的?( )
A. JavaBean的具体类可以不是public的
B. JavaBean可以只提供一个带参数的构造器
C. JavaBean可以象Html标记一样不关闭
D. JavaBean可以保存状态
9. JavaBean的生命周期中,哪个是用来跟踪用户会话的( )
A. session
B. request
C. page
D. application
10.要在session对象中保存属性,可以使用以下哪个语句( )
A. ribute(“key”,”value”)
B. ribute(“key”,”value”)
C. ribute(“key”)
D. ribute(“key”)
11.Jsp:forward 和sendredirect 都是用来做页面跳转的,描述错误的是?( )
A. forward之后可以使用原来的request对象,而且效率更高。
B. sendredirect之后不可以使用原来的request对象,而且效率低。
C. forward地址栏不变化,只能在web应用程序内的页面间跳转。
D. forward地址栏变化,可以跳转到任何页面和机器。


12.关于两种请求,下列说法正确的是? ( )
A. get请求是默认的
B. get请求处理的数据量大小不受限制
C. post请求地址栏里是能够看到数据的
D. post请求可以由doGet方法处理
13. 如果Tomcat安装后,想要修改它的端口号,可以通过修改conf下
的___文件来实现。( )
A.
B.
C.
D.
14.JSP分页代码中,哪个步需次序是正确的?( )
A. 先取总记录数,得到总页数,再取所有的记录,最后显示本页的数据。
B. 先取所有的记录,得到总页数,再取总记录数,最后显示本页的数据。
C. 先取总记录数,得到总记录数,再取所有的记录,最后显示本页的数据。
D. 先取本页的数据,得到总页数,再取总记录数,最后显示本页的数据。
15.下边哪个不是MVC中的组成?( )
A. JavaBean
B. FrameWork
C. JSP
D. Servlet
16..客户化标签库文件,应当保存在哪一个目录下( )
A. web应用程序的根目录
B. 自定义目录
C. WEB-INF目录
D. Lib目录
17.Oracle数据库的JDBC驱动程序类名及其完整包路径为( )
A. Driver
B. Driver
C. . Driver
D. Driver
18.如果需要删除session中的某个属性key,可以调用下面的____方法( )
A. remove(“key”);
B. removeAttribute(“key”)
C. invalidate()
D. logout()
19.下面有关JSP和Servlet关系的论述正确的有:(两个正确答案) ( )
A. JSP能够实现的功能均可由Servlet实现
B. Servlet能够实现的功能均可由JSP实现
C. Servlet更适做表现层
D. JSP更适合做控制层
20. 下面那一个是正确使用JavaBean的方法( )
A.
B.


C.
E.
21.销毁一个session对象,应当调用下面哪一个方法( )
A. date()
B. e()
C. y()
D. ()
22.ActionForm Bean 中验证表单数据方法的返回类型是( )
A. ActionError
B. ActionErrors
C. ActionForward
D. ActionMapping
23.以下哪个说法是正确的?(多选)( )
A. 每个Http请求对应一个单独的ActionServlet实例
B. 对于每个请求访问Hell oAction的Http请求,struts框架只创建一个单独的
HelloAction实例
C. 每个子应用对应一个单独的RequestProcessor实例
D. 每个子应用对应一个单独的文件
24.在struts应用的控制器中包含哪些组件(两个正确答案) ( )
A. JSP
B. ActionServlet
C. Action
D. 客户化标签
25.对于以下这段配置Actionservlet的代码,哪些说法是正确的?(三个正确答案)
` ( )

action
Servlet

config


0

action
*.do



A. Servlet容器在启动应用时,会初始化这个ActionServlet
B. 对于所有URL中以”*.do”结尾的Http请求,都由ActionServlet处理
C. 这段代码位于中
D. 这段代码位于中


26. ActionForm组件的存在范围是(两个正确答案) ( )
A. application
B. session
C. request
D. page
27. 如果同一页面中有多个提交按钮(),要求用一个Action类处理,应当从
下面哪一个扩展更合适 ( )
A. Action
B. DispatchAction
C. LookupDispatchAction
D. ForwardAction
E. SwitchAction
28. 如果同一页面中有多个提交按钮(),要求用一个Action类处理,在
文件的元素中最重要的且必须配置的一个属性是( )
A. parameter
B. validate
C. key
D. scope
29. 如果在配置了数据源,则在那个组件中可以获得这个数据源对象,
进而获得Connection对象( )
A. Action组件
B. 视图组件
C. 模型组件
D. JSP组件
30. struts的中心控制器组件的完整类名是( )
A. Servlet
B.
C.
D. ntroller

二.简述题(总分 40):
1.简述Servlet的生命周期(5分)
Web容器加载servlet,生命收起开始,通过调用servlet
的的init() 方法进行servlet的初始化,通过调用service()方法实现,根据请求的不
同调用不同的 do***()方法,结束服务,web容器调用servlet的destroy()方法
一个se rvlet的生命周期由部署servlet的容器控制,当一个请求映射到一个servlet是,
容器执行下步骤:
1.加载servlet类
2.创建一个servlet类的实例
3.调用init初始化servlet实例,
2.调用service方法,传递一个请求和响应对象
容器要移除一个servlet,调用servlet的destroy方法结束该servlet
2.简述动作和direct()的异同(5分)
重定向 分为两类。一类是客户端重定向,一类是服务器端重定向。客户端重定向可


以通过设置特 定的HTTP头,或者写javaScirpt脚本实现。
服务器端的重定向方式
服务器的 重定向有两种方式,一种是HttpServletResponse的sendRedirect()方法,一
个是使用RequestDispatcher的forward()方法。
direct()方法
HttpServletResponse接口定义了可用于转向的 sendRedirect方法,这个方法将响应定向
到指定的,新的URL,location可以是 一个绝对的URL,如
direct(“http:”)
也可以使用相对的URL locat ion可以是一个绝对的URL,如
direct(也可以使用相对的URL。如果location以 “”开头,
则容器认为相对于当前Web应用的根,否则,容器将解析为相对于当前请求的URL。这种 重定向的方法,
将导致客户端浏览器的请求URL跳转。从浏览器中的地址栏中可以看到新的URL地址 ,作用类似于上面
设置HTTP响应头信息的实现。
d()方法
Reques tDispatcher是一个Web资源的包装器,可以用来把当前request传递到该资源,或者把新的 资
源包括到当前响应中。RequestDispatcher接口中定义了两个方法,参见如下代码:
public interface RequestDispatcher {
void forward(ServletRequest request, ServletResponse response);
void include(ServletRequest request, ServletResponse response);
}
forw ard()方法将当前的request和response重定向到该RequestDispacher指定 的资源。这在实际项
目中大量使用,因为完成一个业务操作往往需要跨越多个步骤,每一步骤完成相应的 处理后,转向到下一
个步骤。比如,通常业务处理在Servlet中处理,处理的结果转向到一个JS P页面进行显示。这样看起来
类似于Servlet链的功能,但是还有一些区别。一个Request Dispatcher对象可以把请求发送到任意一
个服务器资源,而不仅仅是另外一个Servlet 。 include()方法将把Request Dispatcher资源的输出包
含到当前输出中。

注意,只有在尚未向客户 端输出响应时才可以调用forward()方法,如果页面缓存不为空,在重定向前将
自动清除缓存。 否则将抛出一个IllegalStateException异常。
如何得到RequestDispatcher
有三种方法可以得到Request Dispatcher对象。
t. ServletRequest的getRequestDispatcher(String path)方法 ,其中path可以是相
对路径,但不能越出当前Servlet上下文。如果path以“”开头,则 解析为相对于当前上下文的根。
t. ServletContext的getRequestDispatcher(String path)方法 ,其中path必须以“”
开头,路径相对于当前的Servlet上下文。可以调用ServletC ontext的getContext(String uripath)
得到另一个Servlet上下文,并可以转向到外部上下文的一个服务器资源链接。
3.使用t. ServletContext的getNamedDispatcher(String name)得到名为 name的一
个Web资源,包括Servlet和JSP页面。这个资源的名字在Web应用部署描述 文件中指定。
这三种方法的使用有细微的差别。比如,下面是一个应用的配置文件:




FirstServlet
org. tOne


SecondServlet
search. tTwo


FirstServlet
servletfirstservlet


SecondServlet
servletsecondservlet


其中定义了两个Ser vlet,名字分别为FirstServlet和SecondServlet,对应的类分别为
se arch. tOne和org. tTwo。可以
在浏览器中通过类似于下面的链接访问:

http:localhost:8080servletfirstservlet

使用1中方法,例如在firstservlet可以写入下面的代码:

RequestDispatcher rd = uestDispatcher(
d(request, response);
此时控制权将转向到第二个Servlet了。
使用2中的方法,可以从Servlet Context中得到RequestDispatcher代码如下:
RequestDispatcher rd = getServletContext().getRequest
Dispatcher(
d(request, response);
使用3中的方法,从上面的web. xml配置文件可以看到定义了两个Servlet,名字分别为 FirstServlet
和SecondServlet,所以可以得到命名的Dispatcher :

RequestDispatcher rd = getServletConte xt().getNamedDispatcher(
d(request, response);
这样也可以重定向到SecondServlet了。
JSP页面中的重定向
J SP在解析后编译为一个Servlet运行,所以在JSP中也可以使用上面的重定向代码,并且,JSP还提 供
了更便利的操作,如下:

JSP页面执行到这儿,将终止当前的处理,将控制权交由。
如何选择

< br>d()方法和direct()方法的区别是:前者仅
是容器中控制权的转向,在客户端浏览器地 址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览
器将会得到跳转的地址,并重新发送请求链 接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。
所以,前者更加高效,在前者可以满足需要 时,尽量使用Request d()方法,并且,
这样也有助于隐藏实际的链接。在有些情况下,比如 ,需要跳转到一个其它服务器上的资源,则必须使用
quest()方法。

3.。用图形画出一个web.应用程序部署在Tomcat5的基本目录结构,说明每个目录下
保存哪些文件。(8分)

4.提交表单请求时,post和get有哪些区别? (5分)
以Get方式请求方式传输,所带参数附加在请求URL后直接传给服务器,并可以从< br>服务器端的QUERY_STRING这个环境变量中读取;如果以POST请求方式传输则参数被打包在数据包中传给服务器
使用Post方法数据由标准的输入设备读入,使用Get方法,数据由 CGI变量
Query_STRING传递给表单数据处理程序,即附加在请求地址的后面,在浏览器的 地址栏可
看到servlet会自动将以上两种方法得到的数据进行处理,对于两种方法servlet 处理方法是
一样的,用户只要调用HttpServletRequest的getParameter ()方法,给出变量名称即可取出
变量的值。
5.。MVC的各个部分都由那些技术来实现?(9分)
MVC是Model-Vie w-Controller的简写。代表的是应用的业务逻辑
(通过JavaBean,EJB组件实现 ), 是应用的表示面(由JSP页面产生),
是提供应用的处理过程控制(一般是一个Servlet ),通过这种设计模型把应
用逻辑,处理过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和 重用。
6. 什么叫DTO,简述基于struts的应用在模型层和视图层之间加入DTO的优点
(8分)
Data access object 数据访问对象
主要用来封装对数据库的访问,通过她可以把POJO持久化PO,用PO组装出来的
VO,DTO
PO :persistent Object持久对象,可以看成与数据库中的表相映射的java对 象,最简单
的PO就是对应数据库中某个表的一条记录,多个记录可以用PO的集合。PO应该不包含< br>任何对数据库的操作。
VO:value object值对象 通常用于业务层之间的数据传 递,和PO一样也是仅仅包含数
据而已,但应是抽象出的的业务对象,可以和表对应,也可以不
DAO:data access object数据访问对象,此对象用于访问数据库,通常与PO结 合使用,
DAO中包含了各种数据库的操作方法,通过它的方法,结合PO对数据库进行相关的操作
BO:business object 业务对象,封装业务逻辑的java对象,通过调用DAO方法,结合
PO,VO进行业务操作
POJO:plain ordinary java object 简单屋规则java对象

十句简短表白的话-幸福地图


含蓄的情诗-离子反应ppt


幼儿园纲要-网络语音


常德桃花源-今日处暑


生活需要快乐-我的课余生活作文


黄家驹国语歌曲-红色经典诵读


民兵整组工作总结-孔融被收


工作简报范文-人在旅途歌词