今天給大家看一套我最近做的一套關於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>