struts.xml
配置详解之五 Action
配置2
1.
Action
配置
1.1
、
method
属性与动态方法调用注意点
1
、method
属性可以自动匹配doXXX()
方法,如doAdd()
,访问方式一样,这样的好处是可以使用Java
的关键字,如default
,可以创建doDefault()
方法;
2
、如果同一个Action
的不同方法使用的是相同的配置(同样的拦截器、同样的result
的映射),那么可以使用动态方法调用;
3
、如果同一个Action
的不同方法使用的是配置不同的拦截器、不同的result
的映射,那么可以method
属性,为同一个Action
配置多个别名;
4
、动态方法可以修改配置禁用,因为它可能被恶意访问;
5
、动态方法调用与通配符方法有所重叠。
1.2
、
模拟
Struts1
的
ForwardAction
在jsp
中将所有URL
都指向action
,而不是指向jsp
,可以通过如下方式实现。
代码清单
1
:
struts.xml
片段
<
package
name
=
"test"
extends
=
"struts-default"
>
<!--
服务器跳转,返回的地址为
xxx.action -->
<
action name
=
"main"
>
<
result>
/main.jsp
</
result>
</
action>
</
package>
在jsp
中的调用:
代码清单
2
:
operateSuc.jsp
片段
<a
href
=
"
<%=
path
%>
/main.action"
>
返回主页
</a
>
实现原理:
1、
class
属性省略,则默认使用com.opensymphony.xwork2.ActionSupport
类;
2、
当请求“/main.action
”时,框架将创建ActionSupport
实例,调用该实例的execute()
方法,返回“success
”,于是请求被导向到”/main.jsp”
页面。
1.3
、
默认的
action
如果请求的action
不存在,结果将是HTTP 404
错误,我们可以通过配置默认的action
匹配不存在的action
代码清单
3
:
struts.xml
片段
<
package
name
=
"test"
extends
=
"struts-default"
>
<!--
配置默认的
action
,所有不存在的
action
都会匹配此
action
-->
<
default-action-ref
name
=
"hello"
/>
<
action
name
=
"hello"
>
<
result
>
/error.jsp
</
result
>
</
action
>
</
package
>
注意:
1、
default-action-ref
必须在action
元素之前;
2、
每个包中都可以有它自己的默认action
,但是每个名称空间应该只有一个默认action
。
3、
默认action
只对访问action
有效,非action
同样会看到HTTP 404
错误;
4、
推荐的处理方式
是为整个Web
应用程序指定默认页面,在web.xml
中配置如下:
代码清单
4
:
web.xml
片段
<web-app
version
=
"2.5"
xmlns
=
"http://java.sun.com/xml/ns/javaee"
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation
=
"http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
>
<error-page
>
<error-code
>404
</error-code
>
<location
>/error.jsp
</location
>
</error-page
>
</web-app
>
我的联系方式:
85337464
我的博客:
http://coderdream.iteye.com
分享到:
相关推荐
【张冰Struts2学习笔记】0102_第一个Struts2实例 在Java Web开发领域,Struts2框架是十分重要的MVC(模型-视图-控制器)架构之一,它极大地简化了Web应用程序的开发流程。这篇学习笔记将带你入门Struts2,通过创建...
同时,Struts2的配置文件(struts.xml或struts.properties)也需要定义Action的相关配置,如Action的名称、结果页面等。 在开发过程中,了解并熟练掌握`Action`接口和`ActionSupport`类的用法,能有效提高开发效率...
在"【张冰Struts2学习笔记】0202_Struts2的三种接收用户输入的方法"中,我们主要探讨的是如何在Struts2中有效地获取并处理用户提交的数据。以下是对这三种方法的详细解析: ### 1. 使用Action属性 Struts2的核心是...
标题中的“【张冰Struts2学习笔记】0103_Path与绝对路径”表明了这篇笔记主要讨论的是Struts2框架中关于Path和绝对路径的概念及其应用。Struts2是一个流行的Java Web开发框架,它提供了强大的MVC(模型-视图-控制器...
总的来说,张冰的PPT深入浅出地讲解了Struts2框架,涵盖了其核心组件、工作原理、配置细节以及实用的标签库,对于理解和使用Struts2开发Java web应用具有很高的指导价值。通过学习这个PPT,开发者可以更好地掌握...
3. **配置文件**:Struts的配置文件(通常为struts-config.xml)定义了Action的映射、ActionForm Bean的属性以及数据流的方向。这些配置对于理解和控制应用程序的流程至关重要。 4. **Tiles**:在Struts 1.x中,...
Struts2是一个强大的Java ...通过张冰主讲的Struts2 PPT,开发者不仅能学习到上述基础知识,还能了解到实际项目中的最佳实践和常见问题解决方案。这份PPT对于想要深入了解和掌握Struts2框架的人来说是一份宝贵的资源。
2. **Struts2配置**:XML配置文件(struts.xml)是Struts2的中枢,用于定义Action、Action映射、结果类型等。此外,Struts2还支持注解配置,让代码更简洁。 3. **拦截器**:拦截器是Struts2的一个强大特性,可以...
张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)
ActionForm对象负责收集和验证用户输入,而配置文件struts-config.xml定义了请求如何映射到Action。 2. **Action与ActionForm**:Action是处理业务逻辑的类,它接收来自控制器的请求,处理后返回结果。ActionForm则...
Struts是Apache软件基金会下的一个开源项目,是一个用于构建企业级Web应用程序...同时,也会了解到Struts 2的配置方式,包括传统的XML配置和更加简洁的注解配置。这将有助于开发者构建更高效、更可维护的Web应用程序。
张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)
张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)张冰struts原代码(全部1-6)
Struts2的配置方式也更加灵活,支持XML配置和注解配置,甚至可以通过Convention插件实现零配置开发。 登录功能的实现是许多web应用的基础,Struts2提供了一套完整的机制来处理用户登录请求,包括Action的定义、结果...
3. **配置文件**:Struts2的配置文件(如struts.xml)定义了Action的配置、拦截器栈、全局结果等,是控制应用程序行为的重要部分。 4. **拦截器(Interceptors)**:拦截器是Struts2的一个强大特性,它们在Action...
3. **配置文件**:Struts2的配置主要在struts.xml文件中进行,用于定义Action的映射、结果类型、拦截器等。通过XML配置,可以灵活控制应用的行为。 4. **拦截器(Interceptors)**:拦截器是Struts2的一大特色,...
8. **Struts2配置**:在Struts2的配置文件(如`struts.xml`)中,定义Action、结果类型和拦截器栈。这将指定用户请求如何映射到Action,以及Action执行后如何返回结果。 9. **整合测试**:完成配置后,启动服务器,...
### C面向对象程序设计——基于张冰PPT学习教案的关键知识点 #### 一、面向对象程序设计概述 在《C面向对象程序设计张冰PPT学习教案》中,作者通过具体的例子介绍了面向对象编程的基本思想及其与传统的结构化程序...
传智播客Struts2的PPT,是传智播客黎活明老师的东西,和视频是配套的东西还不错
张冰教授的课件和源代码很可能是为了辅助学习这些概念而设计的,通过实际编程例子和练习,帮助学生加深理解和应用这些知识。源代码可能涵盖了各种面向对象的设计模式,如工厂模式、单例模式、观察者模式等,这些都是...