Struts2测试题
今天给大家看一套我最近做的一套关于Struts2的题:
1.以下关于jQuery说法错误的选项是( D )。
A.“$”为jQuery脚本库的默认全局变量名,即“$” = “jQuery”
B.$.ajax( )方法是jQuery提供的最底层的Ajax方法,其它如“$.get( )、$.post( )、$.getJSON( )”等都是在其基础上的再次封装
C.$.ajax( )方法具有较强的灵活性,通过设置“type”属性可以指定请求方式,设置“dataType”属性可以指定服务器端返回的数据类型
D.$.parseJSON( )方法用来返回JSON格式的数据,通常需要与$.getJSON( )方法联合使用
解析:$.parseJSON是用来解析JSON格式的,而不是返回
2. 下列选项中关于XMLHttpRequest对象的说法错误的是( BC )。(选两项)
A.XMLHttpRequest对象是Ajax技术的核心,它的作用是可以发送异步请求到服务器端
B.status属性的作用可以返回当前请求的就绪状态,其常用值为:0、1、2、3、4
解析:readyState的的常用值是0、1、2、3、4,而不是struts属性
C.readyState属性的作用可以返回当前请求的HTTP状态码,其常用值404表示找不到访问对象
readyState的作用可以返回当前请求的就绪状态,而不是HTTP
D.当就绪状态是4且状态码是200时,方可处理服务器数据
3.以下选项中关于jQuery插件说法错误的是( D )。
A.jQuery插件是指基于jQuery脚本库开发出来的扩充函数库
B.jQuery的官方插件叫做jQuery UI
C.所有jQuery插件都必须依赖于jQuery基础脚本库
D.要想使用lazyload插件除了需要导入jQuery基础脚本库外,还需要导入jQuery UI插件库
lazyload属于第三方,跟jQueryUI是无关的,需要单独引用lazyload
4.在使用jQuery插件的应用中,以下选项中可以实现构建列表展示数据的插件是( D )。
A.autocomplete插件 在用户输入时自动提示
B.tree插件 树形菜单
C.grid插件 列表插件
D.datagrid插件列表 展示数据
5.在使用Struts 2的应用中,实现服务器端返回Ajax数据的错误选项是( BD )(选两项)
A.指定Struts 2原有的stream类型结果集
B.指定Struts 2原有的redirect类型结果集
C.使用第三方jar包,实现Struts 2的json类型结果集
D.使用Struts 2原有的despatcher类型结果集
6.关于使用JSON类型的Result返回easy UI的datagrid列表数据说法错误的是( D )
A.需要添加第三方jar包struts2-json-plugin-xxx.jar
B.需要指定package继承json-default
C.可以使用<param>标签的root参数指定返回的结果对象为根对象
D. <result>的type属性可以不指定
只要使用datagrid列表显示数据,就得使用JSON,所以type属性必须指定
7.在Struts 2框架中访问Servlet API对象描述错误的是( AB )
A.ServletActionContext和ActionContext都有getRequest()方法,都返回HttpServletRequest对象
ServletActionContext没有getRequest()方法
B.ServletActionContext和ActionContext访问Servlet API时,都无需直接调用原始Servlet API
ServletActionContext会调用原始Servlet API
C.Action可以实现特定的接口,由Struts 2框架向Action注入Servlet API对象,这种编程思想称为IoC
D.ActionContext类没有封装所有Servlet API的访问方法,所以有时也需要使用ServletActionContext
8.下列选项中,说法错误的是( C )
A.一个Interceptor处理请求后,可以调用下一个Interceptor继续处理请求
B.StrutsPrepareAndExecuteFilter是一个过滤器,它是Struts 2处理请求的入口
C.JSP结果页面运行在Action之前
D.Struts 2框架运行在Web服务器中,如果没有Web服务器,就无法配置并运行Struts 2
9.在struts.xml配置文件中有如下代码:
<action name="userAction" class="cn.jbit.action.UserAction" method="login">
<result type="redirectAction">${nextAction}</result>
<result name="error">/page/error.jsp</result></action>则下列说法不正确的是( D )
A.redirectAction类型可以将请求重定向到Action类
B.${nextAction}用来获取UserAction类中nextAction属性的值
C.UserAction类一定要提供nextAction的getter方法
D.${nextAction}配置是错误的,不能使用EL表达式确定转发的Action
可以使用EL表达式
10.下列自定义拦截器代码语法正确的是( BD )
A.public class MyInterceptor implements Interceptor { public String intercept(ActionInvocation invocation) throws Exception { … } }
实现接口必须重写其方法,这里只重写了一个方法
B.public class MyInterceptor extends AbstractInterceptor { public String intercept(ActionInvocation invocation) throws Exception { … } }
C.public class MyInterceptor implements Interceptor { public void init() { … } public String intercept(ActionInvocation invocation) throws Exception { … } }
跟选项A一样
D.public class MyInterceptor extends AbstractInterceptor { public void init() { … } public String intercept(ActionInvocation invocation) throws Exception { … } }
11.在Struts 2的应用中,要请求一个资源,其URL为:http://…/myaction/dologin.action,并且要访问其Action中的login()方法,下面选项对其配置不正确的是( AD )。
A.<struts>
<package name="default" namespace="/myaction" extends="struts-default">
<action name="dologin!login" class="……">
……
</action>
</package>
</struts>
B.<struts>
<package name="default" namespace="/myaction" extends="struts-default">
<action name="dologin" class="……" method="login">
……
</action>
</package>
</struts>
C.<struts>
<package name="default" namespace="/myaction" extends="struts-default">
<action name="do*" class="……" method="{1}">
……
</action>
</package>
</struts>
D.<struts>
<package name="default" namespace="/myaction" extends="struts-default">
<action name=" dologin" class="……" >
……
</action>
</package>
</struts>
12.以下关于Struts 2的标签说法错误的是( AD )
A.<s:date>用于格式化输出一个日期,它的format属性用于指定日期显示的格式,如:yyyy-mm-dd HH24:mi:ss,表示格式为:“年-月-日 时:分:秒”
B.Struts 2标签比JSTL标签功能更强大,数量也更多
C.<s:property value="username"/>的作用是在页面中访问Action中的getUsername()方法,并显示返回值
D.<s:textarea>可以在页面上生成一个<input type="text" />标签
13. 以下关于OGNL和ValueStack描述错误的是( CD )
A.由于值栈存储在request中,所以值栈和request作用域的生命周期是相同的
B.使用OGNL访问对象属性时,会按照从顶部到底部的顺序查找
C.当ValueStack中存放多个对象时,下面对象的属性会覆盖上面对象中的同名属性
D.Struts 2会将Action的实例保存在Stack Context中而非ValueStack中
14.下列选项对于MVC的优缺点,说法错误的是( D )
A.MVC的优点之一是模型、视图和控制器各司其职、互不干涉
B.MVC的优点之二是由于按层把系统分开,因而可以更好地实现开发中的分工
C.MVC的优点之三是允许使用各种不同样式的视图来访问同一个服务器端的代码,因此有利于组件的重用
D.MVC的优点之四是使应用程序结构变得灵活,各层之间都可以直接相互访问,因此能提交开发效率
15.在Struts 2应用中,能正确处理中文乱码问题的设置是( A )
A.<constant name="struts.i18n.encoding" value="UTF-8">
B.<constant name=" struts.custom.i18.encoding" value="UTF-8">
C.<constant name="struts.custom.i18.resources" value="UTF-8">
D.<constant name="struts.ui.theme" value="UTF-8">
16.下面是Struts 2的StudentAction类的部分代码:
public class StudentAction extends ActionSupport {
private List<Student> students = new ArrayList<Student>();
//省略了getter、setter等其他代码
}
已知students中保存了多个Student对象,下面代码能访问到students中第一个Student对象的name属性值的是( AD )。
A.<s:property value="students[0].name"/>
B.<s:property value="#Student.getName()"/>
C.<s:property value="#students[0].name"/>
D.<s:property value="students.get(0).name"/>
17.下列关于在Struts 2中访问Servlet API的说法错误的是( B )
A.ActionContext是以解耦合方式访问Servlet API
B.ServletActionContext和ActionContext都有getSession()方法,都返回Map对象
C.ActionContext类只封装部分Servlet API,有些功能需要原始的Servlet API才能实现,这种情况就需要使用ServletActionContext类
D.Action可以实现特定的接口,由Struts 2框架向Action注入Servlet API对象
18.假设在Struts 2的struts.xml中有如下拦截器配置:
<interceptors>
<interceptor name="lgIntcpt" class="intceps.LoginInterceptor"/>
<interceptor-stack name="myStack">
<interceptor-ref name=" lgIntcpt "/>
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="myStack"/>
下列说法不正确的是( B )
A.该拦截器执行时,不会调用Struts2中的默认拦截器栈defaultStack
B.拦截器栈myStack的定义有误,应该使用<interceptor-stacks>标签
C.<default-interceptor-ref>标签用来定义默认拦截器或拦截器栈的引用
D.<interceptor-stack>标签中可以定义多个拦截器的引用
19.为了实现图片的下载,配置struts.xml文件时能够填写在横线处的代码是( B )
<action name="download" class="cn.jbit.houserent.action.FileDownAction">
<result name="success" type="stream">
<param name="contentType">______________</param>
<param name="inputName">inputStream</param>
<param name="contentDisposition">
attachment;filename="${fileName}"
</param>
<param name="bufferSize">4096</param>
</result>
</action>
A.text/plain
B.image/gif
C.octet-stream
D.application/msword
20.下列选项中不属于Struts 2框架配置文件的是( D )
A.struts.xml
B.struts-default.xml
C.struts-plugin.xml
D.struts-web.xml
21.下列选项中,通配符使用正确的选项是( C )
A.<action name="?Action" class="cn.jbit.houserent.action.Login" method="{?}">
<result name="success">/page/{?}_success.jsp</result>
<result name="input">/page/{?}_input.jsp</result>
</action>
B.<action name="*Action" class="cn.jbit.houserent.action.Login" method="{*}">
<result name="success">/page/{*}_success.jsp</result>
<result name="input">/page/{*}_input.jsp</result>
</action>
C.<action name="*Action" class="cn.jbit.houserent.action.Login" method="{1}">
<result name="success">/page/{1}_success.jsp</result>
<result name="input">/page/{1}_input.jsp</result>
</action>
D.<action name="*Action" class="cn.jbit.houserent.action.Login" method="{0}">
<result name="success">/page/{0}_success.jsp</result>
<result name="input">/page/{0}_input.jsp</result>
</action>
22.在Struts 2的Action中实现用户权限控制时,需要使用seesion保存用户信息,下面获取session语法正确的是( C )
A.Session session=request.getSession();
B.Session session= ActionContext.getSession();
C.Map session= ActionContext. getContext().getSession();
D.Map session= ServletContext. getContext().getSession();
23.在页面中使用Struts 2的URL标签构建一个URL,则能够正确构建超链接的选项是( C )
<s:url id="first" value="http://www.sohu.com"></s:url>
A.<s:a href="first">搜狐</s:a>
B.<s:a href="#first">搜狐</s:a>
C.<s:a href="%{first}">搜狐</s:a>
D.<s:a href="%{#first}">搜狐</s:a>
24.在Struts 2中实现文件下载时,对于stream结果类型的contentDisposition参数的描述错误的是( C )
A.contentDisposition参数设置响应的HTTP头信息中的Content-Disposition参数的值
B.contentDisposition参数有两部分组成,设置文件的下载处理方式和设置下载文件显示的文件名
C.contentDisposition参数用于设置下载文件的类型
D.contentDisposition参数的设置必须在stream结果类型中完成
25.执行<s:set name="list" value="{'北京','天津','上海','重庆'}"/>后,可以正确遍历该列表的选项是( BD )
A.<s:property value="list"/>
B.<s:iterator value="#list">
<s:property/>
</s:iterator>
C.<s:iterator value="${list}">
<s:property/>
</s:iterator>
D.<s:iterator value="%{#list}">
<s:property/>
</s:iterator>
Struts2测试题的更多相关文章
- 为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?
今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑 ...
- 菜鸟学Struts2——Interceptors
昨天学习Struts2的Convention plugin,今天利用Convention plugin进行Interceptor学习,虽然是使用Convention plugin进行零配置开发,这只是 ...
- 菜鸟学Struts2——零配置(Convention )
又是周末,继续Struts2的学习,之前学习了,Struts的原理,Actions以及Results,今天对对Struts的Convention Plugin进行学习,如下图: Struts Conv ...
- 菜鸟学Struts2——Results
在对Struts2的Action学习之后,对Struts2的Result进行学习.主要对Struts2文档Guides中的Results分支进行学习,如下图: 1.Result Types(Resul ...
- 菜鸟学Struts2——Actions
在对Struts2的工作原理学习之后,对Struts2的Action进行学习.主要对Struts2文档Guides中的Action分支进行学习,如下图: 1.Model Driven(模型驱动) St ...
- 菜鸟学Struts2——Struts工作原理
在完成Struts2的HelloWorld后,对Struts2的工作原理进行学习.Struts2框架可以按照模块来划分为Servlet Filters,Struts核心模块,拦截器和用户实现部分,其中 ...
- 13、零配置Struts2开发
Convention 插件 从 Struts 2.1 开始, Struts 可以使用 Convention 插件来支持零配置: Convention 插件完全抛弃配置信息, 不仅不需要使用 strut ...
- 12、Struts2表单重复提交
什么是表单重复提交 表单的重复提交: 若刷新表单页面, 再提交表单不算重复提交. 在不刷新表单页面的前提下: 多次点击提交按钮 已经提交成功, 按 "回退" 之后, 再点击 &qu ...
- 11、Struts2 的文件上传和下载
文件上传 表单准备 要想使用 HTML 表单上传一个或多个文件 须把 HTML 表单的 enctype 属性设置为 multipart/form-data 须把 HTML 表单的method 属性设置 ...
随机推荐
- leetcode34. 在排序数组中查找元素的第一个和最后一个位置
给定一个按照升序排列的整数数组 nums,和一个目标值 target.找出给定目标值在数组中的开始位置和结束位置. 你的算法时间复杂度必须是 O(log n) 级别. 如果数组中不存在目标值,返回 [ ...
- DataWorks(数据工场)
一.DataWorks(数据工场) DataWorks系列视频 https://help.aliyun.com/video_list/107549.html?spm=a2c4g.11174359.3. ...
- php 克隆 __clone
php 克隆 clone 在实际编程过程中,我们常常要遇到这种情况:有一个对象A,在某一时刻A中已经包含了一些有效值,此时可能会需要一个和A完全相同新对象B,并且此后对B任何改动都不会影响到A中的值, ...
- Linux20期学习笔记 Day4
环境变量.常用系统变量:vim编辑器使用方法及实验:shell脚本两个层次 内置参数及相关实验
- SSH整合——登录模块
1.导包——参照我的GitHub Hibernate hibernate/lib/required hibernate/lib/jpa 数据库驱动 Struts2 struts-blank.war/W ...
- Educational Codeforces Round 42 (Rated for Div. 2) E. Byteland, Berland and Disputed Cities(贪心)
E. Byteland, Berland and Disputed Cities time limit per test2 seconds memory limit per test256 megab ...
- web渗透系列--信息收集
信息收集对于渗透测试前期来说是非常重要的,因为只有我们掌握了目标网站或目标主机足够多的信息之后,我们才能更好地对其进行漏洞检测.正所谓,知己知彼百战百胜! 信息收集的方式可以分为两种:主动和被动. 主 ...
- Atcoder grand 025 组合数学塔涂色 贪心走路博弈
A 略 B 题意:给你N个数(3e5) 每个数可以是0,a,b,a+b(3e5) 但是总数加起来要是定值K(18e10) 问总方法数mod 998244353 解: 把a+b的看成是一个a加上一个b的 ...
- 关于AP如何获取station的rssi
最近在研究一个问题:如何通过AP来获取station的rssi. 具体可以拆分为以下三种情况: 1.首先station如果已经连接到AP上,这种情况很容易就能够得到station的RSSI.这里就不讨 ...
- Redis在centos上面的安装
一.安装redis 第一步:下载redis安装包 wget http://download.redis.io/releases/redis-4.0.6.tar.gz [root@iZwz991stxd ...