当你在客户端敲http://localhost:8080/strust2test/hello
首先找到:strust2test这个web application,找到后去执行这个web application下的web.xml
Tomcat接收到请求之后,会发现这个web.xml下面,配了一个filter,而这个filter过滤所有的url地址,所以当我们在地址栏敲http://localhost:8080/strust2test/hello后,会被StrutsPrepareAndExecuteFilter接收到
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
StrutsPrepareAndExecuteFilter接收到后url情求后,它首先看namespace
<package name="default" namespace="/" extends="struts-default">
<action name="hello" >
<result>/hello.jsp</result>
</action>
</package>
查到“/”后面的hello,它就会去package下面查是否有name属性叫“hello”的action,有的话,找里面对应的result是谁--hello.jsp
Struts的好处就是:
我可以把“请求”和“视图展现”分开,而不是写死。分开的好处就是:如果要换成其他视图,配一下就好了,所以更加灵活。Struts核心的本质就是解决了:把你的请求和最后的结果分开。
分享到:
相关推荐
### Struts2运行机制详解 #### 一、Struts2框架概述 Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web应用框架,它为开发者提供了构建可扩展、易于维护的Web应用程序的工具。Struts2不仅继承了...
struts2 的运行机制可以分为以下几个步骤: 1. 客户端在浏览器中输入一个 url 地址。 2. 这个 url 请求通过 http 协议发送给 Tomcat。 3. Tomcat 根据 url 找到对应项目里面的 web.xml 文件。 4. 在 web.xml 里面会...
本文档生动地向初学者展示了Struts2的运行流程,让初学者对Struts2的工作机制在短时间内有一个完整清晰的认识。独树一帜的展示知识的方式,肯定会让读者耳目一新,拒绝平庸,拒绝照本宣科,拒绝一切故弄玄虚,让技术...
Struts2是Struts1.x和WebWork两个社区合作的结果,可以认为是WebWork的一个进化版本,继承了WebWork的核心机制并在此基础上进行了优化和封装。 在Struts2的工作机制中,FilterDispatcher是一个关键组件,它是一个...
2. **xwork-core.jar**:XWork是Struts2的基础,它提供了一些基础功能,如类型转换、Ognl表达式支持、拦截器机制等。很多Struts2的功能都是基于XWork实现的。 3. **ognl.jar**:OGNL(Object-Graph Navigation ...
很不错的struts运行原理深刻解说,初学者很受用
- **Hello Struts2**:通过创建一个简单的“Hello World”示例,帮助开发者快速上手Struts2的基本配置和运行流程。 - **Action类详解**:Action类是Struts2的核心组件之一,负责处理用户的请求并返回相应的结果。...
在本文中,我们将深入理解Struts2的运行流程,并通过单元测试来验证其完整的工作机制,特别是涉及拦截器、验证框架和Result。 首先,让我们回顾一下Struts2的运行流程。当一个HTTP请求到达服务器时,Struts2框架会...
Struts2的令牌机制是其防止重复提交和CSRF(跨站请求伪造)攻击的一种重要安全策略。在Web开发中,尤其是使用MVC框架如Struts2时,确保用户请求的唯一性和安全性至关重要。令牌机制就是这样的一个工具,它通过在表单...
2. **核心库**:`struts2-core.jar`是框架的核心,包含Action、Result、Interceptor、Freemarker模板引擎等相关类,它是Struts2运行的基石。 3. **拦截器库**:`struts2-convention-plugin.jar`和`struts2-...
Struts2的主要作用是协调前端视图、后端业务逻辑和模型数据,它通过拦截器(Interceptor)机制实现了请求处理的分层架构,使得代码更加模块化和易于管理。此外,Struts2还支持多种视图技术如JSP、FreeMarker、...
《Struts2技术内幕:深入解析Struts2架构设计与实现原理》由国内极为资深的...运行主线篇首先对Struts2的两大运行主线——初始化主线和HTTP请求处理主线进行了深入的剖析,然后对Struts2的扩展机制进行了解读和抽象
在提供的“struts2 demo”压缩包中,你可以找到这些概念的具体实现,包括Action类、视图页面、配置文件等,通过分析和运行这些示例,你可以深入理解Struts2的工作原理和用法。这个压缩包对于初学者来说是一个很好的...
### Struts2 学习重点知识点总结 #### 一、Struts2 概念与架构 **1.1 Struts2 简介** - **定义**:Struts2 是 Apache 组织提供的一个基于 MVC 架构模式的开源 Web 应用框架。 - **核心**:Struts2 的核心其实是 ...
在提供的"Struts2主要Lib"压缩包中,包含了运行Struts2框架所必需的基础库文件。以下将详细讲解Struts2框架的关键知识点以及压缩包中的重要文件。 1. **MVC架构**:MVC模式是软件设计的一种模式,它将业务逻辑、...
这个“struts2全部的jar包”压缩文件包含了运行Struts2应用程序所需的所有核心库和依赖组件。这里我们将深入探讨Struts2框架的关键知识点以及这些JAR包的作用。 1. **Struts2框架基础**: Struts2是Apache软件基金...
综上所述,Struts2是一个功能强大且灵活的Java Web开发框架,它不仅提供了丰富的特性,还通过其独特的设计模式和插件机制,使得开发者能够快速构建高质量的Web应用程序。通过对Struts2核心概念和技术的理解,开发者...
《Struts2技术内幕:深入解析Struts2架构设计与实现原理》由国内极为资深的...运行主线篇首先对Struts2的两大运行主线——初始化主线和HTTP请求处理主线进行了深入的剖析,然后对Struts2的扩展机制进行了解读和抽象。
10. **异常处理**:Struts2提供了全局的异常处理机制,通过`<global-exception-mappings>`标签定义异常映射,可以统一处理各类运行时异常。 "Struts2-part01"可能包含的是该系列学习的第一部分内容,可能涵盖了...
这些核心类和接口定义了框架的运行机制,如`Action`接口、`ActionSupport`类、`.struts2-struts2-core.jar`包中的`FilterDispatcher`或`StrutsPrepareAndExecuteFilter`过滤器,它们负责拦截HTTP请求并将其转发给...