`
wangli9li
  • 浏览: 34071 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Struts2 快速充电 Quick Start

    博客分类:
  • Java
阅读更多
Struts 2的目标是自动化Java Web开发中的常用操作,提高开发效率。

Struts 2中的action, result和FilterDispatcher分别是对model,view和controller的实现。FilterDispatcher将HTTP请求映射到相应的action(映射关系是在项目配置文件里定义的)。Action组件用来实现数据和业务逻辑。JSP,Velocity TemplateFreemaker或一些其他的展现层技术为视图(view)服务。

FilterDispatcher转发请求到某action时,如果该action没有实例化,则创建一个实例,关联到一个新的ActionInvocation实例上。对action的调用应该依照定义,传入一系列interceptor。

ActionInvocation的invoke()方法会启动action的执行。

每当invoke()方法被调用,ActionInvocation根据其状态,执行下一个interceptor。

ActionInvocation通过调用interceptor的intercept()方法来控制stack中的interceptor。

Interceptor的intercept()方法依次调用ActionInvocation的invoke()方法,直到所有的interceptor被调用。最后,action本身被调用,相应的结果返回给用户。

一些interceptor在action执行之前就会工作,一些interceptor在action之后工作。它们每次调用之时并不必须做出反应。

这些interceptor在action执行前后都被调用。

所有的interceptor都按照stack里的定义顺序被调用。

然后,action被调用,生成结果。

重申一次,stack中的所有interceptor按反向顺序被调用。

Struts2的另外重要特性是OGNL和ValueStack。

OGNL(Object-Graph Navigation Language)是强大的表达式语言,用来引用和操控
ValueStack中的数据。

OGNL帮助数据传输和类型转换。

OGNL表达式语言提供简化的语法来引用Java对象。

OGNL被用来将Java端数据属性绑定到string-based的view层。

action存在于ValueStack中,ValueStack则是ActionContext的一部分。ActionContext是全局的存储区域,保存一个HTTP request处理的相关数据。

当一个请求到达, params interceptor帮助将request data移动到ValueStack中。

OGNL将string based的表单数据转换成相应的Java类型。OGNL是利用一套内建的类型转换器莱完成这些的。

重申一次,当结果生成时,OGNL将ValueStack中的Java类型的属性转成string-based的HTML输出。

ActionContext是线程本地的,意思是其内部存储的值是线程唯一的,它保证了Struts2 action的线程安全。
分享到:
评论

相关推荐

    java Struts2快速入门教程pdf

    本教程将带你深入理解Struts2的基础概念、核心组件以及如何快速入门。 一、Struts2框架概述 Struts2是Struts1的升级版,它吸收了WebWork框架的优点,极大地提高了开发效率和代码的可维护性。Struts2基于拦截器模型...

    Struts quick start(快速开发中文版PDF)

    ### Struts 快速入门与关键技术解析 #### Struts 概览 Struts 是一个开源的 Java 应用框架,最初由 Craig R. McClanahan 编写,并于2000年捐赠给 Apache 软件基金会 (ASF)。自那时以来,Struts 已经发展成为一个...

    Struts Kick Start.

    Struts Kick Start 是一本专为初学者设计的指南,旨在帮助读者快速掌握Struts框架的基础知识和实际应用。Struts是Apache软件基金会的一个开源项目,它是一个基于MVC(Model-View-Controller)架构的Java Web开发框架...

    struts2快速上手(附例子)(例子已修改)

    这个“Struts2快速上手(附例子)”教程显然旨在帮助开发者快速理解和应用Struts2框架。通过提供的压缩包文件“strutsDemo”,我们可以预期它包含了一个简单的Struts2示例项目,用于演示框架的基本用法和关键组件。 ...

    Struts2漏洞检查工具Struts2.2019.V2.3

    Struts2是一款非常流行的Java Web框架,用于构建企业级应用。然而,随着时间的推移,Struts2在安全方面暴露出了一些重要的漏洞,这给使用该框架的系统带来了潜在的安全风险。"Struts2漏洞检查工具Struts2.2019.V2.3...

    struts2jar包

    Struts2是一个强大的Java EE应用程序框架,主要用于构建企业级的Web应用。它的核心是MVC(Model-View-Controller)设计模式,可以帮助开发者组织代码,提高开发效率,并且提供了丰富的特性来支持表单验证、国际化、...

    Struts2漏洞测试

    Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试...

    struts2项目开发

    3. 高效性:Struts2 框架提供了一个高效的架构,可以快速地处理用户的请求。 Struts2 框架的应用场景 Struts2 框架的应用场景包括: 1. 企业级应用程序:Struts2 框架适用于开发大型的企业级应用程序。 2. 电子...

    struts2-core.jar

    struts2-core-2.0.1.jar, struts2-core-2.0.11.1.jar, struts2-core-2.0.11.2.jar, struts2-core-2.0.11.jar, struts2-core-2.0.12.jar, struts2-core-2.0.14.jar, struts2-core-2.0.5.jar, struts2-core-2.0.6.jar,...

    Struts2视频教程

    - **Hello Struts2**:通过创建一个简单的“Hello World”示例,帮助开发者快速上手Struts2的基本配置和运行流程。 - **Action类详解**:Action类是Struts2的核心组件之一,负责处理用户的请求并返回相应的结果。...

    Struts2接口文档

    Struts2是一个强大的Java web应用程序开发框架,它基于Model-View-Controller(MVC)设计模式,旨在简化创建用户交互式、数据驱动的web应用的过程。这个“Struts2接口文档”是开发者的重要参考资料,提供了关于...

    struts2 总结工程大全

    struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全...

    Struts2快速学习步骤

     struts2 的概念和作用  struts2 的HelloWorld  简单分析struts2 的运行流程  struts2 配置文件加载  struts.xml 配置文件详解  struts2 常量文件修改  Action 动作类的三种写法  Action 动作类的三...

    struts2jar.zip

    总的来说,"struts2jar.zip"压缩包是一个实用的学习资源,涵盖了从基础到进阶的Struts2知识,通过阅读提供的说明和实践例子,可以帮助开发者快速掌握Struts2框架的使用。在实际开发中,结合具体的项目需求,可以灵活...

    K8 Struts2 Exp 20160516(Struts2综合漏洞利用工具)

    这个工具主要是针对上述漏洞进行利用的,通过自动化的方式帮助安全研究人员或者攻击者快速检测并利用Struts2框架中的漏洞。其主要功能可能包括: 1. **漏洞探测**:扫描目标服务器,识别是否存在Struts2的特定版本...

    struts2 最新漏洞 S2-016、S2-017修补方案 .docx

    Struts2 最新漏洞 S2-016、S2-017 修补方案 Struts2 是一个基于 Java 的 Web 应用程序框架,由 Apache 软件基金会维护。最近,Struts2 发生了两个严重的漏洞,分别是 S2-016 和 S2-017,这两个漏洞可能会导致攻击者...

    struts2-showcase.rar

    Struts2-showcase是一个用于演示和学习Apache Struts2框架功能的开源项目。这个压缩包“struts2-showcase.rar”包含了完整的源代码,旨在帮助...同时,它也是一个很好的学习资源,帮助初学者快速上手Struts2开发。

    struts2 ,struts2 demo

    Struts2是一个强大的Java EE应用程序框架,用于构建和管理MVC(模型-视图-控制器)架构的Web应用。这个“struts2,struts2 demo”很...这个压缩包对于初学者来说是一个很好的学习资源,能够帮助你快速上手Struts2框架。

    Struts2教学视频

    Struts2是一个强大的Java web开发框架,用于构建可维护、可扩展且结构良好的应用程序。它在MVC(Model-View-Controller)设计模式的基础上提供了一种实现方式,使得开发者能够更方便地处理用户请求,控制业务逻辑,...

Global site tag (gtag.js) - Google Analytics