码迷,mamicode.com
首页 > 其他好文 > 详细

struts2配置中Action的name 和package的name和namespace作用

时间:2015-11-17 11:12:09      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:

struts2配置中Action的name 和package的name和namespace是什么作用  

在struts2 struts.xml 配置中

 <package name="ajax" extends="json-default" namespace="/json">  
        <action name="ajaxLogin" class="com.rg.email.action.AjaxLoginAction">  
  
            <!-- 返回类型为json 在sjon-default中定义 -->  
            <result type="json">  
<!--                 root的值对应要返回的值的属性  
                这里的result值即是 对应action中的 result -->  
                <param name="root">result</param>  
            </result>  
        </action>  
    </package>

name="ajax" 
namespace="/json" 
name="ajaxLogin" 
这三个怎么去理解啊 .

---------------------------- 
1.package中的name只是一个标识,你可以随意命名; 
2.action中的name对应你页面中的一个action跳转,比如你页面有个表单提交: <form action="struts.xml中action里的name"> 
3.namespace是用于区分包中相同的类,如果没写,说明该包为默认空间,如果写了(如这个例子),那么就说明包ajax的空间为/json。 

namespace实际上是在包的基础上对Action的进一步组织和划分,可以解决Action重名问题,因为在不同的命名空间中是可以有相同的Action名的,就好比一班有个叫张三的,二班也有个叫张三的,当我们呼叫某个张三时,就得带上“命名空间”,Action也是如此,例子的ajaxLogin就必须通过 /json/ajaxLogin.action的方式来进行调用。 

ajaxLogin那个name就是Action的名字,相当于上个例子的“张三” 

包的名字只是作为其他包引用本包的标记

struts2配置中Action的name 和package的name和namespace作用

标签:

原文地址:http://my.oschina.net/yongqingfan/blog/531167

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!