Step1. 当服务器启动时,服务器加载
核心控制器StrutsPrepareAndExecuteFilter,
该过滤器在初始化阶段依次加载如下配置文件:
a. struts-default.xml - struts2框架提供的默认配置文件,
基包struts-default位于该文件中。
b. struts-plugin.xml - Struts2插件配置文件
c. struts.xml - 与特定应用相关的配置文件
Step2.核心控制器默认接受.action请求后,
分析请求资源路径,
得到namespace和actionName:
如:
requestURI:/dang/user/login.action
namespace: /user
actionName: login
Step3.核心控制器查找配置文件,找到对应的Action类,
并创建Action类的实例:
如:/user ---> <package namespace="/user">
login ----> <action name="login" class="....">
String className="com.tarena.dang.user.action.LoginAction";
Class clz=Class.for(className);
LoginAction action=(LoginAction)clz.newInstance();
注意:每次请求Action时,都会创建
单独的Action类的实例
Step4.核心控制器将请求分发给对应的拦截器,
以附加额外的功能。
其中params拦截器将表单元素的值
获取后传递给Action实例对应的属性
(调用对应的setter方法)。
<form> LoginAction 类
<input name="userName"> ---params---> loginAction.setUserName(request.getParameter("userName"));
<input name="user.userName">
params拦截器:
User user=new User();
registerAction.setUser(user);
user.setUserName(
request.getParameter("user.userName"));
Step5. 请求最终交给了对应的Action实例,
并调用其默认的执行方法execute,
返回result的名称
(即视图资源对应的逻辑名称)
Step6.处理过程原路返回到核心控制器,
核心控制器根据execute 方法的返回值
跳转到对应的页面(默认的方式是请求转发)
分享到:
相关推荐
这个"Struts2应用程序示例"是专为初学者和开发者设计的,它利用Eclipse 3.3作为集成开发环境,JDK 6.0作为Java运行环境,以及Tomcat 6.0作为应用服务器,提供了实际操作的平台来理解和实践Struts2的核心概念。...
Struts2是一个强大的Java web应用程序框架,用于构建和管理MVC(模型-视图-控制器)架构的应用。这个“struts2小程序”很可能是开发者利用Struts2框架开发的一个小型项目,可能包含了基本的CRUD操作或其他特定功能。...
Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、高效且易于维护的Web应用。这个"struts2示例程序"是为了帮助初学者理解并熟悉Struts2框架的基本概念和工作流程。该程序基于Struts2的2.0.14版本,...
Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展且易于管理的企业级应用程序。这个"Struts2小程序源代码"提供了丰富的学习资源,帮助开发者深入理解Struts2的核心概念和技术。 首先,我们来看看标题...
它基于MVC(Model-View-Controller)设计模式,极大地简化了构建基于Java EE的Web应用程序的过程。本资源包含"struts2所有jar包程序文件",是开发者进行Struts2应用开发不可或缺的组件集合。 在Java Web开发中,jar...
Struts2是一个强大的MVC(Model-View-Controller)框架,广泛用于构建Java Web应用程序。这个"struts2登录程序源码"是一个基础的教学资源,旨在帮助初学者理解如何在Struts2框架下实现用户登录功能。下面我们将深入...
Struts2是一个强大的Java web应用程序框架,用于构建和部署可维护、高性能的MVC(Model-View-Controller)架构的应用程序。在这个“Struts2实例小程序1”中,你将开始接触并理解Struts2的基本概念和工作流程,这对于...
Struts2是一个基于MVC(Model-View-Controller)设计模式的Java web应用程序框架,它在Web开发领域中被广泛使用。Struts2的核心是Action类,它负责处理用户的请求并调用业务逻辑。框架提供了丰富的拦截器...
Struts2是一个强大的Java web开发框架,用于构建和维护可扩展且易于管理的企业级应用程序。这个"Struts2入门小程序"是专为初学者设计的,旨在帮助他们快速理解和掌握Struts2的基础知识。 首先,Struts2的核心是...
Struts2是一个非常流行的Java MVC框架,用于构建企业级Web应用程序。然而,它在历史上曾出现过多个安全漏洞,其中最著名的就是“Struts2漏洞”。这个标题和描述提到的"struts2-scan"是一种工具,专门用来检测Struts2...
Struts2 提供了一个强大的标签库,用于简化 Web 应用程序的开发过程。这些标签可以分为两类:通用标签和 UI 标签。下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来控制页面的执行过程,并...
Struts2是Java Web开发中一个非常重要的框架,它的出现为开发者提供了强大的MVC(Model-View-Controller)架构支持,极大地简化了Web应用程序的构建。这篇“Struts2基础应用二”着重介绍Struts2的核心概念、配置以及...
Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、结构清晰的MVC(Model-View-Controller)架构的Web应用。本项目“Struts2应用的BBS项目”是一个基于Struts2框架的基础论坛(BBS)实现,非常适合...
Struts2是一款流行的Java Web框架,它为开发者提供了一种模型-视图-控制器(MVC)架构,便于构建可维护、可扩展的企业级应用程序。然而,Struts2在历史上曾出现过一系列的安全漏洞,其中一些是高危的,允许攻击者...
Struts2是一个流行的Java web框架,它极大地简化了构建MVC(模型-视图-控制器)应用程序的过程。在Struts2中,通过整合其他技术,如Hibernate或iBatis,可以方便地调用数据库的存储过程。存储过程是预编译的SQL语句...
在Web应用程序中,Struts 2的核心依赖于一系列的JAR文件,这些文件包含了框架运行所需的类和资源。以下是对"Struts 2常用jar包"的详细解析: 1. **struts2-core.jar**:这是Struts 2框架的基础核心库,包含了核心...
Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、易于管理的企业级Web应用程序。这个"struts2示例程序demo非常好"的压缩包很可能是为了帮助开发者理解和学习Struts2框架的工作原理和最佳实践。下面...
在Struts2框架中,lib目录下的jar文件扮演着至关重要的角色,它们包含了运行Struts2应用程序所需的各种依赖库。 首先,Struts2lib.jar可能包含了核心的Struts2框架类和接口,这些类提供了处理HTTP请求、视图渲染、...