一、基本概念:
1、Struts 2框架由Struts1.X和WebWork框架发展而来。
2、构建Struts 2应用的最基础的几个类库是commons-lang
3、
freemarker、xwork-core、struts2-core和ognl等。
3、Struts 2中的控制器类是一个普通的POJO。
(Plain Old Java Objects)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB 混淆所创造的简称。
4、在Struts2表单标签库中,表单标签为<s:form>。
5、通过控制器类中的validate()方法来输出校验错误信息。
6、包含所有必须的框架组件的web部署描述符,主要加载前端控制器、及初始化参数的Struts 2配置文件的是l。
7、struts.properties配置文件是定义框架自身的全局变量及框架属性。
8、通过struts2框架的数据绑定机制,user.username等同于
9、Action 接口实现了 ModelDriven 接口,作用是允许在Web层和业务罗辑层使用相同对象。
10、无须配置就可直接调用Action中的非execute()方法的方式Action名!方法名.action。
11、异常映射的配置方式有局部异常和全局异常配置。
12、Struts 2以WebWork为核心,采用的机制来处理用户的请求。
13、Struts 2标签分类为数据标签、控制标签、表单UI标签和非表单UI标签。
14、如果要在JSP页面中使用Struts2提供的标签库,首先必须在页面中使用taglib编译指令导入标签库,其中taglib编译指令为<%@ taglib prefix="s" uri="/struts-tags" %>。
15、ActionSupport类实现了Action接口和ModelDriven等接口。
16、定义应用自身使用的配置Action和请求之间的对应关系、配置逻辑视图名和物理视图资源之间的对应关系的Struts 2配置文件的是l。
17、l配置文件是定义框架自身使用的action映射及result定义。
18、struts.properties配置文件可定义全局属性,也可以在l中定义。
19、ModelDriven 接口的getModel()方法作用是返回一个用于接收用户输入数据的模型对象,则可直接通过属性名来访问,而不需要用user.username。
20、在Action内部配置用<exception-mapping>元素,实现局部异常,而用<global-exception-mapping>元素,并使用<exception-mapping>作为子元素,该映射作用范围为所有Action,实现全局异常。
21、在控制器类中一般需要添加相应属性的setter方法和getter方法。
22、OGNL是一种功能强大的EL(Expression Language,表达式语言),可以通过简单的表达式来访问Java对象中的属性。
23、不属于Action接口中定义的字符串常量的是FAILURE。
24、控制器需要在l配置文件中进行配置。
25、不属于Struts 2表单标签库的是<select>。
26、在JSP页面中可以通过Struts 2提供的<s: text>标签来输出国际化信息。
27、资源文件的后缀名为properties。
28、OGNL说法不正确的OGNL结果不能是布尔值。
29、iterator迭代器不属于数据标签。
30、include标签不属于控制标签。
31、编写国际化程序主要通过类Locale及ResourceBundle实现。
32、说法不正确的是Struts2将它的核心功能分散到Action中实现,不利于系统的解耦。
二、问答:
1、Struts 2 中的MVC 分别是指什么?
在Struts2中,Model对应业务逻辑组件,它通常用于实现业务逻辑方法以及以及与底层数据库的交互等; View对应视图组件,通常是指JSP页面,但也适用于其他视图显示技术,如Velocity或者Excel文档; Control对应系统核心控制器和业务逻辑控制器,系统核心控制器为Struts2框架提供的FilterDispatcher,它根据请求自动调用相应的Action。而业务逻辑控制器是指开发人员自行定义的一系列Action,在Action中负责调用相应的业务逻辑组件来完成处理。
2、Struts 2 框架的优势?
开发JAVA EE为什么使用Struts 2 框架?
(1)开源(2)MVC框架(3)纯POJO的Action (4)更好的标签特性(5)易测试(6)易扩展
3、Struts 2框架的开发流程?
Struts 2框架的开发步骤?
(1)客户端浏览器发出HTTP请求。(2)根据l配置,该请求被FilterDispatcher接收。(3)根据l配置,到需要调用的Action 类和方法,并通过IoC方式,将值注入给Aciton。(4)Action调用业务逻辑组件处理业务逻辑,这一步包含表单验证。(5)Action执行完毕,根据l 中的配置到对应的返回结果result,并跳转到相应页面。(6)返回HTTP响应到客户端浏览器。
4. 请给出Struts2验证框架关于年龄在1-100之间并提交非空的XML配置文件。
<field name="user.age">
<field-validator type="required" short-circuit="true">
<message>请填入年龄</message>
</field-validator>
<field-validator type="int">
<param name="min">1</param>
<param name="max">100</param>
<message>年龄必须在1岁以上,100岁以下</message> </field-validator>
</field>
5、在Struts2中,定义Result的type属性默认的值是什么?与redirect 和chain属性值有何不同?
(1)Struts2里面Result设置的默认type为“dispatcher”。这个“dispatcher”的技术就相当于在Servlet里面的“RequestDispatcher”的技术,也就是一个页面跳转的技术—请求转发。
(2)redirect的特点是全新的请求,这就意味着,本次请求和跳转到下一个页面的请求是不同的对象—请求重定向。
(3)chain是一种特殊的视图结果,用来将Action执行完之后链接到另一个Action中继续执行,新的Action使用上一个Action的上下文(ActionContext),数据也会被传递。jsp用什么前端框架
6、简述什么是MVC?
MVC即模型-视图-控制器。MVC是一种设计模式,它强制把应用程序的输入处理和输出分开。视图是用户看到并与之交互的界面,视图向用户显示相关的数据,并能接受用户的输入,但是它并不进行任何实际的业务处理。模型是应用程序的主体部分,模型表示业务数据和业务逻辑。控制器接受用户的输入并调用模型和视图去完成用户的需求。
7、请写出Struts 2验证框架关于Email的格式并提交非空的XML配置文件。<field name="Email">
<field-validator type="requiredstring">
<message>请填入email</message>
</field-validator>
<field-validator type="email">
<message>请填入合法的Email</message>
</field-validator>
</field>
8、在Struts2中,预定义了一些Result的name属性的字符串常量,写出其名称和作用?
SUCCESS:表示Action执行成功,显示结果视图给用户,值为字符串"success"。NONE:表示Action执行成功,不需要显示视图给用户,值为字符串"none"。ERROR:表示Action执行失败,显示错误页面给用户,值为字符串"error"。INPUT:表示执行Action需要更多的输入信息,回到input对应的页面,值为字符串"input"。
LOGIN:表示因用户没有登陆而没有正确执行,将返回该登陆视图,值为字符串"login"。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论