昨天去求职公司做笔试题目时,遇到了这样一个题目,之前还真没有遇到过,它的问题是:Struts的5个常用类有哪些?有谁知道吗?回来查资料才知道原来以前见过也了解过,只是没想到居然那个题目的答案就是它们。所谓的5个常用类是:ActionServlet、ActionMapping、ActionForm、ActionForward、Action,不知我查的对不对。在此也顺便讲一下Struts2的工作流程吧,虽说面试时很少有人问到,但是作为Struts2的使用者,是应该得了解一下:
在web应用启动时就会加载初始化ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把它们存放到各种配置对象当ActionServlet接收到一个客户请求时,将执行如下流程.
-(1)检索和用户请求匹配的ActionMapping实例,如果不存在,就返回请求路径无效信息;
-(2)如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中;
-(3)根据配置信息决定是否需要表单验证.如果需要验证,就调用ActionForm的validate()方法;
-(4)如果ActionForm的validate()方法返回或返回一个不包含ActionMessage的ActuibErrors对象, 就表示表单验证成功;
-(5)ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪个Action,如果相应的 Action实例不存在,就先创建这个实例,然后调用Action的execute()方法;
-(6)Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给 ActionForward对象指向的JSP组件;
-(7)ActionForward对象指向JSP组件生成动态网页,返回给客户;
相关推荐
Struts2 面试题 Struts2 是基于 Java 语言的 Web 应用程序框架,继承自 WebWork 框架。Struts2 的主要特点是使用 FilterDispatcher 作为核心控制器,将请求分发到相应的 Action 中。下面是 Struts2 面试题中涉及到...
### Struts2面试题及答案解析 #### 一、Struts2框架执行流程与核心组件 **题目背景:** 在Struts2框架中,FilterDispatcher是核心组件之一,它负责处理用户请求,并调用相应的Action进行业务逻辑处理。相较于...
【Struts2面试题】 1. **Struts2架构**:基于MVC模式,了解Action、Result、Interceptor等核心组件。 2. **Struts2拦截器**:自定义拦截器,理解默认拦截器栈及其作用。 3. **Struts2配置**:struts.xml文件,...
Struts2 面试题精要 Struts1 和 Struts2 是两个不同的 Web 应用程序框架,它们之间存在着许多区别。以下是对 Struts1 和 Struts2 的详细比较: Action 类 在 Struts1 中,Action 类需要继承一个抽象基类,而在 ...
以下是对Struts2面试题的一些关键知识点的详细分析: 1. **Struts2架构**:Struts2的核心是Action类,它是处理用户请求的中心组件。通过配置ActionMapping,我们可以指定特定URL与特定Action的映射。Struts2采用...
Struts2面试题分析_尚硅谷_佟刚 1. 简述 Struts2 的工作流程 2. Struts2 拦截器 和 过滤器 的区别 3. 为什么要使用 Struts2 & Struts2 的优点.....
面试题
Struts2是一个强大的Java EE应用程序开发框架,专用于构建基于MVC(模型-视图-控制器)模式的Web应用。它的出现旨在简化企业级应用的开发过程,提供更好的可扩展性和灵活性。以下是对Struts2执行流程的详细解释: 1...
持续更新ing Struts2 框架面试题汇总。 Struts2 基于 MVC 架构,框架结构清晰,使用 OGNL,提供了全局范围、包范围和Action范围的国际化资源文件管理实现。
以上就是关于Struts1面试题的一些核心知识点,包括其初始化流程、处理用户请求的步骤、数据验证机制以及配置文件中的元素详解。这些内容涵盖了Struts1的基本架构和工作原理,对于理解和解答相关面试问题非常关键。
Struts2是一个流行的Java web开发框架,源自WebWork和XWork框架。XWork是一个Command模式的实现,专注于提供核心功能,如拦截器、运行时属性验证、类型转换、OGNL表达式语言和IoC容器。它的设计目标是创建一个通用且...
### Struts2基础面试题详解 #### 1. Struts2的核心控制器及其性质 - **Struts1的核心控制器**:在Struts1框架中,核心控制器是`ActionServlet`,这是一个实现了`HttpServlet`接口的类,因此本质上是一个Servlet。 ...