Action配置的简单实例:
<package name="demo" namespace="/demo" extends="struts-default">
<action name="HelloWorld" class="com.test.action.HelloWrold" >
<result name="success">/WEB-INF/pages/hello.jsp</result>
</action>
</package>
在Struts2中使用包来管理Action的,包的作用于java中包的作用非常类似,主要管理一族业务功能相关的action。在实际应用中,我们把一族业务功能相关的action放在同一个包下。
(1)name属性:值可以任意取名,但是必须唯一。
如果有其他包要继承该包,必须使用该属性名进行引用
(2)namespace属性:定义包的命名空间,作用是作为访问路径的一部分,如上面的配置,如果访问HelloWorld,访问路径为:/demo/HelloWorld.action
namespace 属性可以不配值,如果不配值,则该包使用默认的命名空间,默认空间名为“”(空字符串)
通常来说,每个包都应该继承struts-default包,因为Struts2很多核心功能都是拦截器来实现的。
如:将请求参数封装到action,文件上传和数据校验等等都是通过拦截器实现的。
struts-default定义了这些拦截器和Result类型。只有当包继承了struts-default才能使用struts2提供的核心功能。
struts-default包在struts2-core-2.x.x.jar文件中的struts-default.xml中定义。struts-default.xml也是struts2的默认配置文件,在struts2启动时都会自动加载struts-default.xml文件。
2.Action名搜索路径
1.获得请求路径的URI,例如url是:http://server/struts2/path1/path2/path3/test.action
2.首先寻找namespace为/path1/path2/path3的package,如果不存在这个package则执行步骤3;如果存在这个package,则在这个package中寻找名字为test的action,当在该package下寻找不到action 时就会直接跑到默认namaspace的package里面去寻找action(默认的命名空间为空字符串“” ) ,如果在默认namaspace的package里面还寻找不到该action,页面提示找不到action
3.寻找namespace为/path1/path2的package,如果不存在这个package,则转至步骤4;如果存在这个package,则在这个package中寻找名字为test的action,当在该package中寻找不到action 时就会直接跑到默认namaspace的package里面去找名字为test的action ,在默认namaspace的package里面还寻找不到该action,页面提示找不到action
4.寻找namespace为/path1的package,如果不存在这个package则执行步骤5;如果存在这个package,则在这个package中寻找名字为test的action,当在该package中寻找不到action 时就会直接跑到默认namaspace的package里面去找名字为test的action ,在默认namaspace的package里面还寻找不到该action,页面提示找不到action
5.寻找namespace为/的package,如果存在这个package,则在这个package中寻找名字为test的action,当在package中寻找不到action或者不存在这个package时,都会去默认namaspace的package里面寻找action,如果还是找不到,页面提示找不到action。
3.Action配置中,个配置项的默认值
1.如果没有指定Action的class,默认值为ActionSupport。
2.如果没有指定Action的method属性,默认值为execute()方法。
3.如果没有指定result的name属性,默认值为“success“
(内容来自网络,功学习参考)
分享到:
相关推荐
这是学习struts2时记得重点笔记,包括了一些原理,ognl语句的编写,以及如何设置拦截器等等一些基本知识,起到复习和巩固的作用
struts2学习笔记总结
struts2学习笔记,非本人所写,但有学习的价值,总结的很好,分享一个!
Struts2学习笔记,介绍了struts2的基础部分
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_学习笔记Struts2_学习笔记Struts2_学习笔记
本文档记录了Struts2初学中的所有要点笔记,非常详尽的知识点说明并附加了学习者对知识的理解过程,是新人学习Struts2框架的必备参考典范。
struts2四天的学习笔记。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
这个是本人自学struts2框架时的总结笔记,里面关于struts2的基本知识很是详尽,如果想要进阶的就不要看了,这只是struts2基础的笔记,个人学习用的,绝不掺假!
struts2框架学习笔记整理,作为参考相互学习,多多指正
Namespace决定了action的访问路径,默认为“”,可以接收所有路径的action,如果没有找到相应的namespace时,则使用namespace为空的action Namespace可以写为/,或者/xxx,或者/xxx/yyy,对应的action访问路径为/...
包含struts2-core-2.5.10.1.jar,struts2-jfreechart-plugin-2.5.10.1.jar,struts2-json-plugin-2.5.10.1.jar,struts2-junit-plugin-2.5.10.1.jar,struts2-bean-validation-plugin-2.5.10.1.jar,struts2-cdi-...
1)把struts2的相关jar包导入到项目中去 2)把struts2框架的配置文件struts.xml复制粘贴到项目中的src下面(同时也可以把log4j.properties放到src下) 在这里我们主要是要的这个struts.xml文件的中的声明部 分,以前写...
struts2-2.5源码包含jar包struts2-2.5源码包含jar包struts2-2.5源码包含jar包struts2-2.5源码包含jar包struts2-2.5源码包含jar包struts2-2.5源码包含jar包struts2-2.5源码包含jar包struts2-2.5源码包含jar包struts2-...
struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换struts2学习笔记3数据类型转换
struts2学习笔记和源码,struts2原理。文件上传、i18n等等
改struts2入门案例是我本人自己写的入门小案例,可以使用。适合刚接触或者准备学习struts2的同事拿来看看
Struts2入门案例 实现简单的
struts2入门教程和学习笔记,适合初学者使用
struts2学习笔记struts2学习笔记struts2学习笔记