Struts 新解

本文介绍了Struts2框架的核心概念,包括ActionInvocation的作用、ValueStack的结构与使用方式、Result和ResultTypes的工作原理,以及标签库的应用。同时,还详细说明了Struts2的配置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

The build process represents an independent,consistent, and repeatable method to packge an application in a state that can be deployed or distributed.

Maven2 是创建、测试、打包程序的命令行工具。利用Maven2来创建项目是很容易的。 首先,创建项目配置文件;按照惯例,配置文件命名为pom.xml,位于项目的根目录。与其他创建项目不同;Maven2是采用生命周期来创建项目的。每一个生命周期提供多个过程,每个过程按照特别的顺序来执行。顺序是不能改变的。

@Conversion标示需要应用到类上,让Struts2知道此类有自定义的类型转换器。

请求和响应的起始点和结束点都是同源于网络浏览器。ActionInvocation对象管理着被执行action的运行环境和对话状态。它是ActionProxy类的核心。

运行环境由三部分组件构成:actions, interceptors,results. Value Stack是Struts2框架中一个核心的概念。所有的核心组件都会与它打交道从而获得上下文信息以及运行环境中的元素。从实质上讲,Value Stack是stack的一种具体实现形式。但是,Value Stack与传统意义上的stack是有差异的。第一个不同就是stack的内容由四部分组成:

临时对象:在处理请求的过程中,需要临时存储的对象。
model对象:当action实现了ModelDriven接口,model对象会位于action对象之前,从而保证model对象提前执行;
action对象:执行的action;
命名对象:有标示符和名称的对象。

另外一个不同在于stack是如何使用的。传统意义上,操作stack的时候,我们会推进对象或者弹出对象。对于Value Stack来说,是通过对象图表浏览语言OGNL来查询和评估对象的。和其他表达式语言一样,譬如jstl,OGNL提供了利用.标示来检索对象的机制。

Result 和Result Types

在action运行完之后,需要返回结果信息给前端客户。在Struts2中,这个任务分为两步来完成:Result类型和Result自身。

Result类型提供了返回用户类型的具体信息。Result类型在Struts2中已经配置好或者通过插件的形式提供,但是开发者也可以自己提供自定义的Result类型。默认的Result类型是dispatcher,dispatcher类型利用jsp响应前端用户。当一种Result类型定义好后,可以在不同的action中反复多次的使用。

创建自定义的Result类型,需要实现Result接口。Result接口与action接口类似,提供execute()方法来提供具体的实现。ActionInvocation参数提供Result需要知道的action信息和运行环境信息。

public interface Result extends Serializable {

public void execute (ActionInvocaion invocation) throws Exception;

}

Result定义了action执行完后struts2 框架将要发生的流程。action中的每一个方法映射着一个处理url请求返回Result。

-------Tag Libraries-------

标签库是action和view之间的纽带。Struts2的标签库与JSTL标签库的不同在于Struts2的标签库与Struts2框剪本身的结合比较紧密。Struts2的标签库充分的利用了Value Stack来访问action的方法以及OGNL来运行表达式。Struts2中有四种不同的标签库
控制标签:控制视图中渲染何种信息;
数据标签:渲染action方法返回的动态信息;
表单标签:html form标签;
非表单标签:在form中使用,但又不是form规范元素的标签。

------Configuring the Elements of the Framework-------

web.xml配置文件是决定HTTP request 元素如何被servlet容器处理的j2ee配置文件。它不是严格Struts2的配置文件,但是它是启动Struts2工作的必要配置文件。

struts.xml配置文件是Struts2 应用的核心配置文件。在struts.xml文件中,<struts>标签对中包含四种元素:include, package,constant, bean. 为了模块化和便于管理,struts.xml可以分解成若干个小文件。struts.xml可以通过include来把所有的文件集合起来。

在Struts2启动的时候会依次加载下面三个文件:

struts-default.xml:这是Struts2框架中默认的配置文件,在这个文件中提供了result类型、interceptors 和interceptor stacks的配置;
struts-plugin.xml:如果在classpath中放置了plug-in jar包,那么插件将被加载;
struts.xml:配置web应用的配置文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值