STRUTS2模拟(答案)
struts2模拟题1
基于。
Net的需求分析和解决方案模拟题一一、单选题:(本题共20题,每题1分,共20分)1.MSF风险管理过程定义了六个逻辑步骤,下列中不包括那一项___A)风险识别 B)风险计划C)风险控制 D)风险报告2. 以下各项中,不是构思阶段交付的成果的是___A)远景/范围 B)项目结构C)风险评估 D)解决方案设计策略3.概要设计有三个步骤以及相关基准,下列中不属于的是__A) 调研 B)概要说明书C)分析 D) 优化4.统一建模语言UML定义了四种关系,下列中不属于的是__A)依赖 B)关联C)聚合 D) 派生5.MSF过程模型由五个阶段组成,其中下列不包含的是那个阶段___A)构思 B)计划C)开发D)设计6. 以下对“零缺陷”阶段描述正确的是__A)“零缺陷”阶段就是要保证软件不存在任何缺陷了B)“零缺陷”阶段是指一段时间内所有已知的缺陷都解决了C)“零缺陷”阶段度过后软件就是可以放心交付了D)“零缺陷”阶段只需要解决以前发现的所有缺陷7. 构思阶段,团队执行的主要任务中,不包括那些___A)建立团队 B)定义项目结构C)定义商业目标 D)创建远景说明E) 评估当前情况 F)建立需求分析8.设计阶段共有三个,其中那一项不包括__A)概要设计 B)概念设计C逻辑设计 D) 物理设计9.以下那些对微软解决方案框架(MSF)的表达是错误的___A)MSF是一个瀑布型的开发方式B) MSF 是一个螺旋型的开发方式C)MSF 与其他的开发方式不能同时应用在一个项目中D)MSF 中没有项目经理这一角色10.平衡三要素优先级中,定义范围意味着平衡各类最终用户的需要,考虑客户规定的其他优先级,几个变量可能会影响项目成败,这几个变量包括成本、资源进度表、功能和__A)可用性 B)可靠性C)可变性 D) 可定性11.下列选项中不包括功能说明书的元素的主体内容是___A)概念设计摘要 B)用例C)使用场景 C)建模12. 下列选项中不包括业务需求分类的是________A)用户 B)系统C)业务 D)场景13.物理设计的交付结果中,一下选项,______不是他的主成果?A)网络拓扑 B)有伪代码的初步用户界面C)解决方案的数据库架构 C)基线部署模型14.物理设计的四个步骤是:调研、分析、合理化和____A)实现 B)约束C)打包 D)部署15.下列选项中不属于良好的用户界面的特点的是____A)直观设计 B)易于导航C)打开页面的速度 D)输出验证16.在数据库设计一对一的关系中,实体的一个实例与其他的实体的对应实例直接相关。
struts2复习模拟题.doc
填空:1.Struts 2以_过滤器_为核心,采用_矜截器_的机制来处理用户的请求。
2.构逮Struts 2应用的最基础的几个类库是_struts2-core_、_commons-logging_、_xwork-core_^ _freamarker _____ 以及_ognl_。
3.Struts 2屮的控制器类是一个普通的_POjO_。
4.如果要在jSP页面屮使川Struts 2提供的标签库,酋先必须在页面屮使川taglib编译指令导入标签库•,其中taglib 编译指令力_<%@ taglib prefix=”s” uri=”strut-tags”%> _________ 。
5 .在Struts 2表华标签序•中,表単标签为__ <s:form/> _____ 。
6.ActionSupport 类实现了_action __________ 接U和_ validateable ________ 等接UI。
7.通过控制器类屮的 __ validate() ______ 方法来输出校验错误信息。
8.在Hibernate XML影射文件中描述主键生成机制,.其属性描述了主键的生成策略,至少写出三种策略名increment 、native 、uuid 。
9.在Hibernate中级联操作的属性值至少写出三个____________________ none ______ 、_____ s ave-update ______ 、__ all ______ o10 Hibernate 的会ffi接口是____ Session 接口_____ ,它山接口 _SessionFactory 接口_创建;Hibernate处理事务的接口是______ Transaction接口 _______ :封妓HQL的接口足_____ C riteria 接口_____ 011. Struts2框架山 _____ Struts ______ 和_____ WebWork _____ 框架发展而来。
软件开发框架(J2EE)Struts 2拦截器习题与答案
1.以下属于struts2的控制器组件是()。
A.ActionB.ActionFormC.ActionServletD.dispatchAction2.以下属于struts2的体系结构的是()。
A.struts2控制器组件B.struts2配置文件C.FilterDispathcerD.Action3.以下属于struts2配置文件中的配置元素是()。
A.<package>B.<action>C.<form-beans>D.<action-mappings>4.关于struts1和struts2对比的说法正确的是()。
A.Struts1要求Action类继承Struts1框架中的Action父类,Struts2中则不一定需要继承,可以是POJO类B.struts1中的Action不是线程安全的,而struts2中的Action是线程安全的C.struts1和struts2中都使用ActionForm对象封装用户的请求数据D.struts1使用OGNL表达式语言来支持页面效果,struts2通过ValueStack技术使标签库访问值5.以下关于ValueStack说法正确的是()。
A.每个Action对象实例拥有一个ValueStack对象B.每个Action对象实例拥有多个ValueStack对象C.Action中封装了需要传入下一个页面的值,这些值封装在ValueStack对象中D.ValueStack会在请求开始时被创建,请求结束时消亡6.关于struts2配置文件说法正确的是()。
A.必须在WEB-INF/classes目录下B.名字必须为struts.xmlC.配置Action时,必须配置包信息D.使用<forward>元素配置转发7.在struts2配置中用()元素来配置常量。
B.<constants>C.<constant>D.<constant-mapping>8.关于struts2包的说法正确的是()。
STRUTS2模拟(答案)
STRUTS2模拟测试(开卷——定时90分钟)一、填空题1.Struts2框架由___________和___________框架发展而来。
(Struts&WebWork )2.Struts2以___________为核心,采用___________的机制来处理用户的请求。
(WebWork,拦截器)3.构建Struts2应用的最基础的几个类库是___________、___________、___________、___________以及___________。
4.Struts2中的控制器类是一个普通的___________。
Class5.如果要在JSP页面中使用Struts2提供的标签库,首先必须在页面中使用taglib编译指令导入标签库,其中taglib编译指令为___________。
<%taglib uri="/struts-tags" prefix="s"%>6.在Struts2表单标签库中,表单标签为___________。
<s:form>7.ActionSupport类实现了___________接口和___________等接口。
8.通过控制器类中的___________方法来输出校验错误信息。
二、选择题1.不属于Action接口中定义的字符串常量的是___________。
BA.SUCCESS B.FAILUREC.ERROR D.INPUT2.在控制器类中一般需要添加相应属性的___________和___________。
ACA.setter方法 B.as方法C.getter方法 D.is方法3.控制器需要在___________配置文件中进行配置。
BA.web.xml B.struts.xmlC.struts2.xml D.webwork.xml4.不属于Struts 2表单标签库的是___________。
(完整word版)J2EE考试复习试题_struts2_spring_hibernate(答案整合完毕)
一、填空:1.Struts 2框架由__webWork______和___xWork_框架发展而来。
XWork是一个标准的Command模式实现,并且完全从web层脱离出来。
Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL – the Object Graph Navigation Language),IoC(Inversion of Control倒置控制)容器等。
其目的是:创建一个泛化的、可重用且可扩展的命令模式框架,而不是一个特定在某个领域使用的框架。
其特点是:1、基于一个简单的接口就可以进行灵活且可自定义的配置;2、核心命令模式框架可以通过定制和扩展拦截器来适应任何请求/响应环境;3、整个框架通过类型转换和使用OGNL的action属性验证来构建;4、包含一个基于运行时Attribute和验证拦截器的强大的验证框架。
Xwork和WebWork的关系WebWork2 被构建在XWork之上,以XWork为基础。
通过使用XWork的命令模式框架和拦截器框架,提供了一个支持Web功能、能快速构建Web应用的命令模式框架。
xwork和Webwork的交互图2.Struts 2以__过滤器__为核心,采用__拦截器__的机制来处理用户的请求。
3.构建Struts 2应用的最基础的几个类库是_struts2-core__、_commons-logging_、_xwork-core_、__freamarker___以及_ognl_。
4.Struts 2中的控制器类是一个普通的_POJO_。
5.如果要在JSP页面中使用Struts 2提供的标签库,首先必须在页面中使用taglib编译指令导入标签库,其中taglib编译指令为___ <taglib><taglib-uri>/struts-tags</taglib-uri><taglib-location>/WEB-INF/lib/struts2-core-2.0.11.1.jar</taglib-location></taglib> ________。
struts面试题及答案【重要】
struts⾯试题及答案【重要】1. 简述 Struts2 的⼯作流程:①. 请求发送给 StrutsPrepareAndExecuteFilter②. StrutsPrepareAndExecuteFilter 判定该请求是否是⼀个 Struts2 请求(ActionMapping判断),不是就放⾏。
(根据路径的后缀是 .action或者.doj进⾏判断)public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) req;HttpServletResponse response = (HttpServletResponse) res;try {if (excludedPatterns != null && prepare.isUrlExcluded(request, excludedPatterns)) {chain.doFilter(request, response);} else {prepare.setEncodingAndLocale(request, response);prepare.createActionContext(request, response);prepare.assignDispatcherToThread();request = prepare.wrapRequest(request);ActionMapping mapping = prepare.findActionMapping(request, response, true);if (mapping == null) {boolean handled = execute.executeStaticResourceRequest(request, response);if (!handled) {chain.doFilter(request, response);}} else {execute.executeAction(request, response, mapping);}}} finally {prepare.cleanupRequest(request);}}③. 若该请求是⼀个 Struts2 请求,则 StrutsPrepareAndExecuteFilter 把请求的处理交给 ActionProxypublic void serviceAction(HttpServletRequest request, HttpServletResponse response, ActionMapping mapping) throws ServletException {Map<String, Object> extraContext = createContextMap(request, response, mapping);// If there was a previous value stack, then create a new copy and pass it in to be used by the new ActionValueStack stack = (ValueStack) request.getAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY);boolean nullStack = stack == null;if (nullStack) {ActionContext ctx = ActionContext.getContext();if (ctx != null) {stack = ctx.getValueStack();}}if (stack != null) {extraContext.put(ActionContext.VALUE_STACK, valueStackFactory.createValueStack(stack));}String timerKey = "Handling request from Dispatcher";try {UtilTimerStack.push(timerKey);String namespace = mapping.getNamespace();String name = mapping.getName();String method = mapping.getMethod();ActionProxy proxy = getContainer().getInstance(ActionProxyFactory.class).createActionProxy(namespace, name, method, extraContext, true, false);request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY, proxy.getInvocation().getStack());// if the ActionMapping says to go straight to a result, do it!if (mapping.getResult() != null) {Result result = mapping.getResult();result.execute(proxy.getInvocation());} else {proxy.execute();}// If there was a previous value stack then set it back onto the requestif (!nullStack) {request.setAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY, stack);}} catch (ConfigurationException e) {logConfigurationException(request, e);sendError(request, response, HttpServletResponse.SC_NOT_FOUND, e);} catch (Exception e) {if (handleException || devMode) {sendError(request, response, HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e);} else {throw new ServletException(e);}} finally {UtilTimerStack.pop(timerKey);}}④. ActionProxy 创建⼀个 ActionInvocation 的实例,并进⾏初始化public ActionInvocation getInvocation() {return invocation;}⑤. ActionInvocation 实例在调⽤ Action 的过程前后,涉及到相关拦截器(Intercepter)的调⽤。
struts2问答和答案
负责拦截由<url-pattern>/*</url-pattern>指定的所有用户请求,当用户请求到达时,该Filter会过滤用户的请求。默认情况下,如果用户请求的路径
不带后缀或者后缀以.action结尾,这时请求将被转入struts2框架处理,否则struts2框架将略过该请求的处理。
ServletContext servletContext = ServletActionContext.getServletContext();
方案二:
类 implements ServletRequestAware,ServletResponseAware,SessionAware,ServletContextAware
Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,
所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。
1)在软件设计上Struts2的应用可以不依赖于Servlet API和struts API。 解耦合
2)拦截器,实现如参数拦截注入等功能;
3)多种表现层技术,如:JSP、freeMarker、Velocity等;
4)Struts2的输入校验可以对指定某个方法进行校验;
2)过滤器是拦截用户请求的,范围明显比拦截器大的多。 可以拦截静态资源html,jsp等页面
14请你写出struts2中至少5个的默认拦截器?
fileUpload 提供文件上传功能
i18n 记录用户选择的locale
struts2面试题
struts2面试题Struts2是一个基于Java开发的Web应用程序框架,被广泛应用于企业级Java应用开发中。
在面试中,面试官可能会提出一些关于Struts2的问题,以评估应聘者的技术水平。
下面是一些常见的Struts2面试题及其详细答案,希望对你在面试中有所帮助。
1. 什么是Struts2?Struts2是一个轻量级的、基于MVC模式的Web应用程序框架。
它采用Java Servlet API和JavaServer Pages (JSP)技术,并提供了一种简单易用的方式来开发可维护和可扩展的Web应用程序。
2. Struts2的主要特性是什么?Struts2的主要特性包括:- MVC架构:将应用程序分为模型、视图和控制器,使开发更容易管理和扩展。
- 拦截器:通过拦截器可以在请求处理的各个阶段添加自定义的逻辑。
- 标签库:提供了丰富的标签库,简化了页面开发。
- 表单验证:提供了灵活且强大的表单验证机制,可以验证用户输入的数据。
- 国际化支持:支持多语言和本地化。
- 配置简单:通过配置文件来管理应用程序的行为。
3. Struts2的工作原理是什么?Struts2的工作原理如下:1) 客户端发送HTTP请求到服务器。
2) 服务器将请求交给Struts2的过滤器(Filter)。
3) 过滤器通过配置文件找到对应的Action,并调用相应的方法。
4) Action处理请求,并返回一个结果页面的名称或一个结果对象。
5) 结果页面的名称通过配置文件进行映射,服务器将其发送给客户端。
4. 什么是Struts2中的Action类?Action类是Struts2框架中的核心组件,用于处理Web请求。
一个Action类对应一个业务功能,其包含了要执行的方法和数据。
它负责接收请求、处理业务逻辑、将结果返回给前端页面。
5. Struts2中的拦截器是什么?有哪些内置的拦截器?拦截器是Struts2中的组件,用于在请求处理的各个阶段添加自定义的逻辑。
Struts2企业开发实践教程课后练习答案-第一章
试验目的:•熟悉S t r u t s 2框架的基本组成。
•掌握S t r u t s 2应用的配置基础。
试验大纲:•掌握S t r u t s 2的引入和配置。
•掌握A c t i o n的编写和配置。
•掌握A c t i o n的访问。
试验任务:•创建办公自动化J a v a W e b项目o a w e b 。
•配置S t r u t s 2框架( 引入J A R, 修改w e b . x m l ) 。
•创建S t r u t s的配置文件s t r u t s . x m l 。
•创建用户增加页面“/ u s e r / a d d . j s p ”,显示的表单和表单元素如表1 - 3所示。
表1 - 3 表单及表单元素表单表单元素账号文本框密码密码框姓名文本框简介文本域提交按钮•创建用户增加处理A c t i o n “ a c t i o n . U s e r A d d A c t i o n ”, 编写 A c t i o n处理方法e x e c u t e ( ) , 并在自己的配置文件中配置p a c k a g e 、 a c t i o n和r e s u l t( 1 )取得输入的用户信息。
( 2 )如果账号、密码、姓名任何一个为空, 则自动跳转到增加页面。
2 1( 3 )如果账号、密码、姓名都不为空, 则直接在A c t i o n 中连接数据库, 将用户信息增加到用户表中, 数据库和用户表自己确定。
( 4 )增加用户成功后自动跳转到用户主页“/ u s e r / m a i n . j s p ”。
( 5 )如果增加失败, 自动跳转到用户增加页面“/ u s e r / a d d . j s p ”。
•编写用户主页“/ u s e r / m a i n . j s p ”。
显示的“增加新用户成功! 继续增加新用户”信息中“增加新用户”为超链接, 单击后可自动跳转到用户增加页面。
J2EE模拟
选择题(针对以下题目,选择符合题目要求的答案。
针对每一道题目,全选对,则该题得分;所选答案错误或漏选,则该题不得分。
每题2分。
)1.在struts2配置中用()元素来配置常量。
A. <const>B. <constants>C. <constant>D. <constant-mapping>2.一个持久化类的实例可能存在的状态有( A B D )。
[选三项]A.瞬态 B.持久态 C.隔离态 D.游离态3.在Struts2中,Action处理后的默认结果(result标签)类型是()。
A.Dispatcher B.redirectC.Chain D.以上说法都不正确4.hibernate增加数据的时候可以调用session的( A D )方法。
[选两项]A.save B.update C.add D.saveOrUpdate5.Hibernate对JDBC访问数据库的代码作了封装,从而大大的简化了数据访问层的重复性代码,它是针对三层架构中()的解决方案。
A.表现层 B.业务逻辑层 C.持久层 D.数据层6.事务隔离级别是由( C )实现的。
A.Java应用程序 B.Hibernate C.数据库系统 D.JDBC驱动程序7.关于Spring与Hibernate集成,以下说法错误的是( A )。
A. 通过集成Spring与Hibernate,以Spring管理程序的依赖关系,将SessionFactory注入DataSourceB. 通过Spring,在Biz层代码中无须直接实例化DAO类,而是通过注入获得C. 通过Spring,在DAO类中无须实例化SessionFactory,而是通过注入获得D. Spring提供HibernateDaoSupport类来简化Hibernate的使用8.Struts2动态调用的格式为()。
A. ActionName?methodName.actionB. ActionName! methodName.actionC. ActionName*methodName.actionD.ActionName@mathodName.action9.在Hibernate中,()接口提供了用于保存、更新、加载和删除实体对象的方法。
struts2hibernate架构技术教程课后参考答案
第1章Struts2框架技术入门1.5 习题1.5.1 选择题1.D2.A3.C4.B5.B1.5.2 填空题1.MVC2.Struts1和WebWork3.IBM4. FilterDispatcher5.JSP、Struts2标签1.5.3 简答题1.简述MVC设计模式的工作流程。
答:MVC设计模式工作流程是:(1)用户的请求(V)提交给控制器(C);(2)控制器接受到用户请求后根据用户的具体需求,调用相应的JavaBean或者EJB(M部分)来进行处理用户的请求;(3)控制器调用M处理完数据后,根据处理结果进行下一步的调转,如跳转到另外一个页面或者其他Servlet。
2.简述Struts2的工作原理。
答:Struts2中使用拦截器来处理用户请求,从而允许用户的业务控制器Action与Servlet分离。
用户请求提交后经过多个拦截器拦截后交给核心控制器FilterDispatcher处理,核心控制器读取配置文件struts.xml,根据配置文件的信息指定某一个业务控制器Action(POJO类)来处理用户数据,业务控制器调用某个业务组件进行处理,在处理的过程中可以调用其他模型组件共同完成数据的处理。
Action处理完后会返回给核心控制器FilterDispatcher一个处理结果,核心控制器根据返回的处理结果读取配置文件struts.xml,根据配置文件中的配置,决定下一步跳转到哪一个页面。
一个客户请求在Struts2框架中处理的过程大概有以下几个步骤:(1)客户提交请求到服务器;(2)请求被提交到一系列的过滤器过滤后最后到FilterDispatcher;FilterDispatcher是核心控制器,是基于Struts2中MVC模式的控制器部分;(3)FilterDispatcher读取配置文件struts.xml,根据配置信息调用某个Action来处理客户请求;(4)Action执行完毕,返回执行结果,根据struts.xml的配置找到对应的返回结果。
Struts2概述习题答案
Bbb w[]\SSH企业级应用开发第二章 Struts2概述习题一、struts2框架的核心类库是()A.xwork-core-2.3.15.jarB.ognl-3.0.6.jarC.freemarker-2.3.19.jarD.struts-core-2.3.15.jar二、在struts2中进行数据校验,通过()标签显示字段错误信息A.<s:text>B.<s:property>C.<s:form>D.<s:fielderror>三、全局视图是通过()标记来定义的A.<result>B.<global-result>C.<action>D.<interceptor>四、下列不属于struts2的动作类的常量返回值的是()A.successB.inputC.neverD.login五、以下不属于struts2动作执行的结果类型的是()A.actionB.redirectC.redirectActionD.dispatcher六、控制器需要在()配置文件中进行配置A.web.xmlB.struts.xmlC.struts2.xmlD.webwork.xml七、在struts.xml文件中,假如有一个package中没有配置namespace,那么在其中配置一个name为login的Action,它的result配置为<result>/login.jsp</result>,已知在此配置文件中还有另一个namespace为user的package其中也有一个name为login的Action,它的result配置为<result>/loginUser.jsp</result>,那么在以下什么情况下能访问到login.jsp()A.根路径/loginB.根路径/user/loginC.根路径/login/userD.根路径/abc/login九、struts2的主要核心功能是由()实现A.过滤器B.拦截器C.类型转换器D.配置文件十、下列不属于struts2标签的是()A.<s:textfield>B.<s:textarea>C.<s:submit>D.<select>十一、struts2中使用()封装用户请求参数,使用户无需手动写代码去作用域中取参数的值A.ServletB.FormC.ActionD.ActionForm十二、struts2中允许通过()标签配置元素将一个配置文件分解成多个配置文件。
struts2复习题(含答案)5篇
struts2复习题(含答案)5篇第一篇:struts2复习题(含答案)Struts2复习题1.以下属于struts2的控制器组件是:A.ActionB.ActionFormC.ActionServletD.dispatchAction 2.以下属于struts2的体系结构的是:(多选)A.struts2控制器组件B.struts2配置文件C.FilterDispathcerD.Action 3.以下属于struts2配置文件中的配置元素是:(多选)A.B. C. D. 4.关于struts1和struts2对比的说法正确的是:A.struts1要求Action类继承struts1框架中的Action父类,struts2中则不一定需要继承,可以是POJO类B.struts1中的Action不是线程安全的,而struts2中的Action 是线程安全的C.struts1和struts2中都使用ActionForm对象封装用户的请求数据D.struts1使用OGNL表达式语言来支持页面效果,struts2通过ValueStack技术使标签库访问值5.以下关于ValueStack说法正确的是:(多选)A.每个Action对象实例拥有一个ValueStack对象B.每个Action对象实例拥有多个ValueStack对象C.Action中封装了需要传入下一个页面的值,这些值封装在ValueStack对象中D.ValueStack会在请求开始时被创建,请求结束时消亡 6.关于struts2配置文件说法正确的是:A.必须在WEB-INF/classes目录下B.名字必须为struts.xmlC.配置Action时,必须配置包信息D.使用元素配置转发 7.在struts2配置中用()元素来配置常量: A. B. C. D.8.关于struts2包的说法正确的是:A.struts2框架使用包来管理常量B.struts2框架定义包时必须指定name属性C.struts2框架中配置包时,必须继承自struts-default包,否则会报错D.struts2框架中使用包来管理Action9.struts2中获取Servlet API的方法正确的是:(多选)A.使用ActionContext对象以解耦合的方法访问Servlet API B.使用ServletActionContext对象以解耦合的方式访问Servlet API C.使用ActionContext对象以耦合的方式访问Servlet API D.使用ServletActionContext对象以耦合的方式访问Servlet API 10.struts2动态调用的格式为: A.ActionName?methodName.actionB.ActionName!methodName.actionC.ActionName*methodName.action******************************11.如果要实现struts2的数据校验功能A.普通Action类可以实现B.继承自Action接口可以实现C.继承自ActionSupport类可以实现D.继承自ActionValidate类可以实现12.如果要实现自定义处理结果,需继承那个类A.DispathcerB.StrutsResultSupportC.SupportD.Action 13.实现动态返回结果,在配置元素时使用()指定视图资源A.${属性名}B.@{属性名}C.${'属性名'}D.${“属性名”} 14.用于实现国际化的struts2标签是:A.B. C.D. 15.struts2默认的处理结果类型是:A.dispatcherB.redirectC.chainD.forward 16.自定义转换器继承的抽象类是:A.ConverterB.TypeConverterC.StrutsTypeConverterD.converts 17.自定义转换器的注册方式有:A.只有全局注册方式B.只有局部注册方式C.只有全局和局部注册方式D.以上说法都不对18.自定义拦截器类的方式有:(多选)A.实现Interceptor接口B.实现AbstractInterceptor接口C.继承Interceptor类D.继承AbstractInterceptor类19.在struts.xml文件中,使用()元素定义拦截器A. B.C. D. 20.在OGNL中?操作符的作用是: A.取出符合选择逻辑的第一个元素B.取出符合选择逻辑的最后一个元素C.取出符合选择逻辑的所有元素 D.以上说法都不对21.以下属于struts2标签的是:(多选)A.Ajax标签B.数据访问标签C.logic标签D.bean标签 22.以下哪个标签是struts2中的用于循环迭代: A. B.C. D. 23.Struts2主要核心功能是由()实现a)过滤器 b)拦截器 c)类型转换器 d)配置文件24.Struts中的ActionServlet属于MVC模式()a)视图 b)模型 c)控制器 d)业务层25.Struts2框架由()和()框架发展而来的【选择二项】a)b)c)d)Hibernate Struts Spring WebWork 26.Struts2以(B)为核心,采用()的机制处理用户请求a)Struts b)WebWork c)拦截器 d)jar包27.struts2中,不属于Action接口中定义的字符串常量的是()a)SUCCESS b)FAILURE c)ERROR d)INPUT 28.struts2在控制器类中一般需要添加相应属性的()和()【选择二项】a)setter方法 b)as方法 c)getter方法 d)is方法29.struts2控制器需要在()配置文件中进行配置a)web.xml b)struts.xml c)application.porperties d)webwork.xml 30.不属于struts2标签库的是()在JSP页面中可以通过Struts2提供的()标签来输出国际化信息a) b) c) d) 31.资源文件的后缀名为()a)txt b)doc c)property d)properties32.a)b)c)d)33.a)b)c)d)34.a)b)c)d)35.a)struts2自定义类型转换器必须实现的接口是()Convert TypeConverter StrutsTypeConverter StrutsConvert struts2关于注册全局类型转换器的说法正确的是()【选择二项】必须提供xwork-conversion.properties文件注册文件的格式为:复合类型=对应类型转换器注册文件的格式为:对应类型转换器=复合类型以上说法都不正确struts2自定义拦截器中的“return invocation.invoke()”代码表示()【选择二项】不执行目标Action的方法,直接返回执行目标Action的方法在自定义拦截器中,该代码是必需的在自定义拦截器中,该代码是可选的struts2中,以下配置文件上传拦截器只允许上传bmp图片文件的代码,正确的是()image/bmpb)c)d)36.a)b)c)d)37.a)b)c)d)38.39.a)b)c)d)40.a)b)c)d)41.a)b)c)d)42.a)b)c)d)43.a)b)c)d)*.bmpbmpimage/*.bmp 以下关于OGNL的说法正确的是()【选择二项】ActionContext是OGNL的上下文环境 StackContext是OGNL的上下文环境 ValueStack是OGNL的根 ActionContext是OGNL的根假设在Session中存在名为uid属性,通过OGNL访问该属性,正确的代码是()#uid #session.uid uid ${session.uid}假设在某JSP页面中存在””代码,则以下说法正确的是()编译JSP页面时会出现错误编译JSP页面时不会出现错误,但页面不会显示任何内容该代码用于输出位于ValueStack(值栈)栈顶的对象以上说法都不正确struts2默认的处理结果类型是()dispatcher redirect chain 以上说法都不正确下列选项中,关于Struts2配置文件说法正确的是()必须置于WEB-INF/classes目录下必须为Struts.xml 配置Action时必须配置包信息使用元素配置转发下列选项中,关于Struts2的Action说法正确的是()【选择二项】struts2会为每一个请求创建一个对应的Action实例struts2在请求处理过程中,只有一个Action实例struts2通过属性来封装用户请求参数在struts2中定义的属性都用于封装用户请求参数struts2中动态方法调用的格式为()ActionName_methodName.do ActionName!methodName.doActionName_methodName.actionActionName!methodName.action问答题:MVC是什么含义?第三篇:struts2搭建Struts2环境时:1找到开发Struts2应用需要使用到的jar文件.2编写Struts2的配置文件3在web.xml中加入Struts2 MVC框架启动配置struts2-core-2.x.x.jar :Struts 2框架的核心类库xwork-2.x.x.jar :XWork类库,Struts 2在其上构建ognl-2.6.x.jar :对象图导航语言(Object Graph Navigation Language),struts2框架通过其读写对象的属性freemarker-2.3.x.jar :Struts 2的UI标签的模板使用FreeMarker 编写commons-logging-1.1.x.jar :ASF出品的日志包,Struts 2框架使用这个日志包来支持Log4J和JDK 1.4+的日志记录。
struts2复习题(含答案)
struts2复习题(含答案)Struts2复习题1。
属于struts2的下列控制器组件是:a . actionb . action formc . action servletd . dispatch action 2 . struts 2配置文件中的下列配置元素是:(多项选择)a。
在1993年,结构1和结构2之间的比较是正确的:A .结构1要求动作类继承结构1框架中的动作父类,而结构2不一定需要继承。
它可以是POJO类b。
Struts 1中的操作不是线程安全的。
struts2中的动作是线程安全的d。
struts 1使用OGNL表达式语言来支持页面效果。
Struts2通过值堆栈技术使标签库访问值为4。
以下关于值堆栈的陈述是正确的:(多选)b .每个操作对象实例都有多个值堆栈对象C。
操作封装了需要传递到下一页的值。
操作对象封装在一个值堆栈对象中。
值堆栈在请求开始时创建。
在请求结束时消失5。
关于struts2配置文件的正确陈述是A。
名称必须是Struts.xmlc。
在网络信息/类目录中配置操作时。
必须配置包信息。
使用元素配置转发6。
使用()元素配置struts2配置中的常量:a.b.c.d.7。
关于struts2包的正确说法是,A.struts2框架使用包来管理常量b。
struts 2框架在定义包时必须指定name属性d。
struts 2框架使用包来管理action8。
在struts 2中获得Servlet API的正确方法是:(多选)a .使用ActionContext对象来访问Servlet APIb。
使用ServletActionContext对象来访问小服务程序接口。
使用ServletActionContext对象来访问Servlet API 9。
struts2动态方法调用的格式为:动作名?方法名。
动作B。
动作名!方法名。
动作名*方法名。
动作名@方法名。
动作10。
如果要实现struts2的数据验证功能,A .公共动作类可以实现B .从动作接口继承可以实现C。
Struts2企业开发实践教程课后练习答案-试验
试验目的:•Action的编程和配置。
•Action访问ServletAPI。
•Action的Result的配置。
试验大纲:•熟悉Struts的配置。
•熟悉Action的编程、配置和访问。
•熟练掌握Action访问ServletAPI编程。
了解Result的配置和使用,以及动态Result的配置和使用。
试验任务:•创建JavaWeb项目“cityweb”。
•配置Struts2框架(引入JAR;修改web.xml;创建Struts配置文件)。
•创建Struts标准配置文件和自己的配置文件。
在自己的配置文件中进行Action和result的配置。
4.编写客户主分发Action“com.city.erp.action.CustomerMainAction”。
请求地址是“/customer/main.action”;由控制方法execute;请求时传递fun参数,分别是main、add、modify、delete,如“/customer/main.action? fun=add”;使用动态Result配置方法实现到客户主页“/customer/main.jsp”、客户增加页面“/customer/add,jsp”、客户修改页面“/customer/modify.jsp”、客户删除页面“/customer/delete.jsp”的导航。
5.编写客户管理主页面“/customer/main.jsp”,显示“客户管理”和增加客户页面、修改客户页面、删除客户页面的3个导航。
单击增加客户,请求主分发Action,进入客户增加页面。
6.编写客户增加页面“/customer/add.jsp”,显示增加客户表单项如下。
•客户编号:文本框。
•客户名称:文本框。
•联系人:文本框。
•提交按钮。
•输入客户信息单击提交到客户增加Action。
7.编写客户增加处理Action“com.city.erp.action.CustomerProcessAction”;由方法add()实现客户增加处理,取得增加页面输入的客户数据,连接到SQLServer2000 的Northwind数据库,将客户数据增加到表Customer中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
STRUTS2模拟测试(开卷——定时90分钟)
一、填空题
1.Struts2框架由___Struts1________和____WebWork_______框架发展而来。
(Struts&WebWork )
2.Struts2以___WebWork______为核心,采用____拦截器_______的机制来处理用户的请求。
(WebWork,拦截器)3.构建Struts2应用的最基础的几个类库是struts-core-2.1.6.jar___________、__xwork-2.1.2.jar_________、__ognl-2.6.11.jar_________ 、_freemarket-2.3.13、_commons-logging-1.0.4.jar_________以及
___commons-fileupload-1.2.1.jar________。
4.Struts2中的控制器类是一个普通的_____class______。
Class
5.如果要在JSP页面中使用Struts2提供的标签库,首先必须在页面中使用taglib编译指令导入标签库,其中taglib编译指令为_<%@ taglib prefix=”s” uri=”/struts-tags”%>__________。
<%taglib
uri="/struts-tags" prefix="s"%>
6.在Struts2表单标签库中,表单标签为_<s:form>__________。
<s:form>
7.ActionSupport类实现了____Action_______接口和_Validateable__________等接口。
8.通过控制器类中的___validate()________方法来输出校验错误信息。
二、选择题
1.不属于Action接口中定义的字符串常量的是_____B______。
B
A.SUCCESS B.FAILURE
C.ERROR D.INPUT
2.在控制器类中一般需要添加相应属性的____A_______和____C_______。
AC
A.setter方法 B.as方法
C.getter方法 D.is方法
3.控制器需要在____B_______配置文件中进行配置。
B
A.web.xml B.struts.xml
C.struts2.xml D.webwork.xml
4.不属于Struts 2表单标签库的是_____D______。
D
A.<s: textfield > B.<s: textarea >
C.<s: submit > D.<select>
5.在JSP页面中可以通过Struts 2提供的___D________标签来输出国际化信息。
D
A.<s: input > B.<s: texts >
C.<s: submit > D.<s:text>
6.资源文件的后缀名为____D_______。
D
A.txt B.doc C.property D.Properties
三、简答题
1、简述什么是MVC?
MVC即模型-视图-控制器.MVC是一种设计模式,它强制把应用程序的输入处理和输出分开.视图是用户看到并与之交互的界面。
视图向用户显示相关的数据,并能接受用户的输入,但是它并不进行任何实际的业务处理。
模型是应用程序的主体部分。
模型表示业务数据和业务逻辑。
控制器接受用户的输入并调用模型和视图去完成用户的需求
2、列举struts2 web应用中常用的4个.jar文件。
commons-logging-1.0.4.jar
freemarker-2.3.8.jar
struts2-core-2.0.14.jar
ognl-2.6.11.jar
xwork-2.0.7.jar
3、简述servlet的生命周期。
Servlet被服务器实例化后,容器运行其init()方法,请求到达时运行其service()方法,service()方法自动派遣运行与请求对应的doGet、doPost方法等,当服务器决定将实例销毁的时候调用其destroy方法
4、用自己的话简要阐述struts2的执行流程。
Struts 2框架本身大致可以分为3个部分:核心控制器FilterDispatcher、业务控制器Action和用户实现的企业业务逻辑组件。
核心控制器FilterDispatcher是Struts 2框架的基础,包含了框架内部的控制流程和处理机制。
业务控制器Action和业务逻辑组件是需要用户来自己实现的。
用户在开发Action和业务逻辑组件的同时,还需要编写相关的配置文件,供核心控制器FilterDispatcher来使用。
Struts 2的工作流程相对于Struts 1要简单,与WebWork框架基本相同,所以说Struts 2是WebWork的升级版本。
基本简要流程如下:1、客户端浏览器发出HTTP请求。
2、根据web.xml配置,该请求被FilterDispatcher接收。
3、根据struts.xml配置,找到需要调用的Action类和方法,并通过IoC方式,将值注入给Aciton。
4、Action调用业务逻辑组件处理业务逻辑,这一步包含表单验证。
5、Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,并跳转到相应页面。
6、返回HTTP响应到客户端浏览器。
5、简述Struts1和Struts2的不同点
四、代码题
1、给出以下Action的Struts.XML配置文件描述(注1:请求为Test/Hello_onPlay.go)
package com.yourcompany.action;
public class HelloWorldAction
{
private String message;
public String getMessage()
{
return message;
}
public void setMessage(String message)
{
this.message = message;
}
public String onPlay() throws Exception
{
System.out.println(this.getMessage());
return "success";
}
public String execute() throws Exception
{
System.out.println(this.getMessage());
return "success";
}
}
2、请给出Struts2验证框架关于Email格式,年龄在1-100之间,提交非空的配置文件。
3、请给出OGNL中从valueStack,Session,Request三种作用域中或得userName属性对应value的代码
4、请编写一个拦截器,该拦截器可以获得用户输入的用户名这个数据,业务逻辑为逐个判断用户名中是否包含“你”,“我”,“他”三个数据,如果包含则直接返回输入页面,如果不包含则运行至PersonAction。
(除代码外,要给出拦截器和Action的配置文件)。