- 浏览: 260974 次
- 性别:
- 来自: 宁波
文章分类
最新评论
-
ydqwtt:
但是我的Java Source File中显示的是*.clas ...
MyEclipse6.5 注释乱码 -
BlueDream348:
谢谢。。收益了
SOAP -
2838938:
学习一下
Oracle监听器安装与配置 -
luorongda:
满足范式要求的数据库设计是结构清晰的,同时可避免数据冗余和操作 ...
数据库设计 -
meteormatt:
这篇文章写的不错.但是排版不怎么好.
Panel和PlaceHolder的区别
ActionServlet
是该 MVC 实现的 Command
部分,它是这一框架的核心。
ActionServlet
(Command)
创建并使用
Action
、
ActionForm
和
ActionForward
。如前所述,
struts-config.xml
文件配置该 Command。在创建 Web 项目时,您将扩展
Action
和
ActionForm
来解决特定的问题。文件
struts-config.xml
指示
ActionServlet
如何使用这些扩展的类。这种方法有几个优点:
- 应用程序的整个逻辑流程都存储在一个分层的文本文件中。这使得人们更容易查看和理解它,尤其是对于大型应用程序而言。
- 网页设计人员不必费力地阅读 Java 代码来理解应用程序的流程。
- Java 开发人员也不必在更改流程以后重新编译代码。
可以通过扩展
ActionServlet
来添加 Command 功能。
ActionForm
维护 Web
应用程序的会话状态。
ActionForm
是一个抽象类,必须为每个输入表单模型创建该类的子类。当我说
输入表单模型
时,是指
ActionForm
表示的是由 HTML
表单设置或更新的一般意义上的数据。例如,您可能有一个由 HTML
表单设置的
UserActionForm
。Struts
框架将执行以下操作:
- 检查
UserActionForm
是否存在;如果不存在,它将创建该类的一个实例。
- Struts 将使用 HttpServletRequest 中相应的域设置
UserActionForm
的状态。没有太多讨厌的request.getParameter()
调用。例如,Struts 框架将从请求流中提取fname
,并调用UserActionForm.setFname()
。
- Struts 框架在将
UserActionForm
传递给业务包装UserAction
之前将更新它的状态。
- 在将它传递给
Action
类之前,Struts 还会对UserActionForm
调用validation()
方法进行表单状态验证。 注: 这并不总是明智之举。别的网页或业务可能使用UserActionForm
,在这些地方,验证可能有所不同。在UserAction
类中进行状态验证可能更好。
- 可在会话级维护
UserActionForm
。
注:
-
struts-config.xml
文件控制 HTML 表单请求与ActionForm
之间的映射关系。 - 可将多个请求映射到
UserActionForm
。 -
UserActionForm
可跨多页进行映射,以执行诸如向导之类的操作。
Action
类是业务逻辑的一个包装。
Action
类的用途是将
HttpServletRequest
转换为业务逻辑。要使用
Action
,请创建它的子类并覆盖
process()
方法。
ActionServlet
(Command) 使用
perform()
方法将参数化的类传递给
ActionForm
。仍然没有太多讨厌的
request.getParameter()
调用。当事件进展到这一步时,输入表单数据(或 HTML
表单数据)已被从请求流中提取出来并转移到
ActionForm
类中。
注:扩展
Action
类时请注意简洁。
Action
类应该控制应用程序的流程,而不应该控制应用程序的逻辑。通过将业务逻辑放在单独的包或
EJB 中,我们就可以提供更大的灵活性和可重用性。
考虑
Action
类的另一种方式是 Adapter
设计模式。
Action
的用途是“将类的接口转换为客户机所需的另一个接口。Adapter
使类能够协同工作,如果没有
Adapter,则这些类会因为不兼容的接口而无法协同工作。”(摘自 Gof
所著的
Design Patterns - Elements of Reusable OO
Software
)。本例中的客户机是
ActionServlet
,它对我们的具体业务类接口一无所知。因此,Struts
提供了它能够理解的一个业务接口,即
Action
。通过扩展
Action
,我们使得我们的业务接口与 Struts
业务接口保持兼容。(一个有趣的发现是,
Action
是类而不是接口)。
Action
开始为一个接口,后来却变成了一个类。真是金无足赤。)
输入事件通常是在 HTTP 请求表单中发生的,servlet 容器将 HTTP
请求转换为
HttpServletRequest
。控制器查看输入事件并将请求分派给某个
Action
类。
struts-config.xml
确定
Controller 调用哪个
Action
类。
struts-config.xml
配置信息被转换为一组
ActionMapping
,而后者又被放入
ActionMappings
容器中。(您可能尚未注意到这一点,以
s
结尾的类就是容器)
ActionMapping
包含有关特定事件如何映射到特定
Action
的信息。
ActionServlet
(Command)
通过
perform()
方法将
ActionMapping
传递给
Action
类。这样就使
Action
可访问用于控制流程的信息。
ActionMappings
是
ActionMapping
对象的一个集合。
发表评论
-
JS学习
2009-11-30 21:24 716ECMAScript http://be ... -
java读取.properties文件
2009-11-16 14:37 1228通常,在实际项目中,为了便于配置管理,我们需要将一些配置管理信 ... -
jsp页面和Action互动
2009-05-26 16:08 9491、从jsp页面中获取参数值 ;form表单;用request ... -
jsp+mysql
2009-05-05 16:24 0首先在MySQL数据库里创建一students表,然后插入几条 ... -
在网页文件中调用CSS文件
2009-04-20 19:40 1412在网页文件中调用CSS文 ... -
HTML 系列教程
2009-04-16 20:41 973站点1:http://www.w3school.com.cn/ ... -
JSP初探
2009-04-10 21:19 01、JSP语法分为三种不同类型 1、1编译器指令( ... -
struts2中获得request方法
2009-04-09 19:37 1366request: ValueStack req ... -
struts2实例
2009-04-09 10:32 2644【第1步】 安装Struts2 这一步对于Stru ... -
structs2配置遇到的一些问题
2009-04-09 10:19 17381、 如果将全部jar包引入。启动tomcat ... -
structs
2009-04-08 18:45 1168建立基于Struts1.x的Web程序的基本步骤 1. ... -
struts、MVC2
2009-04-08 13:12 909... -
structs
2009-04-08 10:39 1169框架(Framework)是可重用的,半完成的应 ... -
JSP基础
2009-04-07 18:58 997JSP(JavaServer Pages)是由Su ... -
JDBC
2009-04-07 11:06 850<!-- /* Font Definitions * ... -
Servlet的调用详解zz
2009-04-07 09:57 10711. 由 URL直接 调用 Servlet ... -
zzServlet--2
2009-04-07 08:58 712一、servlet生命周期 从Tomcat处理用户请求,我 ... -
zzservlet基本结构
2009-04-06 21:24 671下面的代码显示了一个简单Servlet的基本结构。该 ... -
zz什么是servlet--1
2009-04-06 20:26 841Servlet是使用Java Servlet ... -
applet
2009-04-06 20:14 1595现在的java界,很多东西叫××let,××let的意思都是些 ...
相关推荐
Struts最早是作为Apache Jakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServer Pages 、Servlet、标签库以及面向对象的技术水准 Struts2和Struts1的不同
### Struts1 框架详解 #### 一、Struts1 基础与架构 **1.1 J2EE技术栈** Struts1框架是基于Java2平台企业版(J2EE)构建的,它依赖于以下技术: - **Servlet**:处理HTTP请求的基础接口,用于创建Web应用中的...
Struts2深入详解一书的源代码,Struts2深入详解
### Struts2配置详解 #### 一、总览 在深入了解Struts2的配置细节之前,我们先来简要概述一下Struts2框架的核心特点及其配置文件的基本结构。Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web...
Struts2是一个流行的Java Web框架,用于构建基于MVC(Model-View-Controller)架构的应用程序。它提供了一种组织和管理应用程序组件的方法,简化了开发过程。本文将深入探讨Struts2中的常量配置,这些常量在框架的...
Struts2框架详解 Struts2是Java Web开发中的一款广泛应用的开源MVC框架,它构建在Apache Struts 1的基础上,提供了更为强大的功能和更好的灵活性。Struts2旨在简化Web应用开发,通过将表现层与业务逻辑层解耦,提高...
struts2标签详解(经典)struts2标签详解(经典)struts2标签详解(经典)
本资料包包含的是《Struts2深入详解》一书的源码分析,涵盖了从第一章到第五章的内容,并附带了相关的jar包,方便读者结合理论与实践进行学习。 首先,让我们从第一章开始,Struts2的基础知识。这一章通常会介绍...
Struts-config详解 Struts-config.xml 是Struts框架的核心配置文件,它描述了所有的Struts组件。在这个文件中,我们可以配置主要的组件及次要的组件。下面是struts-config.xml文件的主要元素: 一、struts-config....
### Struts框架详解 #### 一、Struts框架概述 Struts框架是一个开源的Java Web应用框架,基于Model-View-Controller(MVC)架构模式。该框架的主要优点在于其高度模块化的设计,具备良好的灵活性和重用性,极大地...
"Struts2 中 Struts.xml 配置文件详解" Struts2 中的 Struts.xml 配置文件是 Struts2 框架的核心配置文件,用于定义应用程序的行为和结构。在 Struts.xml 文件中,我们可以定义 package、action、interceptor、...
Struts 1.2 是一个经典的Java Web开发框架,用于构建基于MVC(Model-View-Controller)模式的应用程序。这个框架简化了处理用户请求、业务逻辑和视图展示的流程。在MyEclipse环境中设置一个Struts项目通常涉及以下...
### Struts2属性文件详解 #### struts.configuration 该属性用于指定加载Struts 2配置文件的配置文件管理器,默认值为`org.apache.struts2.config.DefaultConfiguration`,这是Struts 2默认的配置文件管理器。若...
配置详解** Struts2的配置主要在struts.xml文件中进行,包括Action配置、结果类型配置、拦截器配置等。Action配置定义了Action类及其关联的URL,结果类型配置决定了Action执行后的跳转逻辑,拦截器配置则允许在...
在深入详解Struts2的课本代码中,我们可以看到一系列章节对应的不同代码示例,包括`ch01`、`ch02`、`ch03_1`、`ch03_2`、`ch03_3`和`ch03_4`。这些章节通常会涵盖以下几个重要的知识点: 1. **Struts2基础概念**:...
这个“Struts2标签库详解(非常不错)”的资源应该包含了对Struts2所有标签的详细介绍,以及相关的API文档。 Struts2标签库的核心在于提供了一种声明式编程的方式,使得开发者可以更专注于业务逻辑,而不是繁琐的JSP...
Struts2是一个流行的Java web应用程序框架,用于构建MVC(模型-视图-控制器)架构的应用。它提供了许多内置功能,如国际化、异常处理、插件扩展等,以简化开发流程。在Struts2中,配置是至关重要的,因为它们定义了...
Struts 是一个强大的Java Web应用程序开发框架,它提供了一套丰富的自定义标签库,使得开发者在构建用户界面时能够更加方便地处理业务逻辑和数据展示。本文将详细讲解Struts中的Bean Tags、HTML Tags和Logic Tags的...