struts.xml配置同名action测试
2012-04-24 14:04
253 查看
这几天开始看struts2的一些东西,试着做了几个简单的action,在配置struts.xml 时发现package有几个属性不太懂的,name,namespace,extends,abstract,这几个是比较常用的,百度google了一下,自己又测试了一下,大概明白了。
1.name 包的名称,和java的包有点像,我只发现在继承的时候用到了,具体还不知道什么用;
2.abstract 是指定是否是抽象的,抽象包?呵呵,也许吧。默认都是false;
3.extends,和java的继承好像同一个意思,就是继承了那个包,默认继承的是struts-default,在struts-core 的jar包可以看到 struts-default.xml 文件中,指定了一个包的名字是struts-default。一般就是继承的这个包;
4.namespace 命名空间,这个是实际访问action的路径,默认是"/",即根目录。
我有一个疑问就是,如果有两个同名的action的话,那么怎么区分呢?
办法1:通过namespace,不通的路径对应到同名的多个action,这样是可以的
办法2:我试图用包名来实现一下,结果发现不行,因为访问路径和包好像没关系,那么如果是不通的包下面,写了两个同名的action,而且他们的namespace也都是一样的,比如"/",那么,提交请求到action的时候,会选择哪一个呢?
通过实验发现,在不同的包下面把两个action的name设置成一样,处理请求的是第二个action;
然后我又测试在同一个包下面,把两个action的name设置为一样,处理请求的是第二个action;
那么我猜想,既然有同名,相同访问路径的action,并没有报错,那么访问的时候总是最后一个action,目前试验是这样的结果,不知道具体是什么原因呢,为什么会允许这种情况出现呢?
百度和google没有搜索到,群里面也没人回答我,希望早日解惑。加油!
1.name 包的名称,和java的包有点像,我只发现在继承的时候用到了,具体还不知道什么用;
2.abstract 是指定是否是抽象的,抽象包?呵呵,也许吧。默认都是false;
3.extends,和java的继承好像同一个意思,就是继承了那个包,默认继承的是struts-default,在struts-core 的jar包可以看到 struts-default.xml 文件中,指定了一个包的名字是struts-default。一般就是继承的这个包;
4.namespace 命名空间,这个是实际访问action的路径,默认是"/",即根目录。
我有一个疑问就是,如果有两个同名的action的话,那么怎么区分呢?
办法1:通过namespace,不通的路径对应到同名的多个action,这样是可以的
办法2:我试图用包名来实现一下,结果发现不行,因为访问路径和包好像没关系,那么如果是不通的包下面,写了两个同名的action,而且他们的namespace也都是一样的,比如"/",那么,提交请求到action的时候,会选择哪一个呢?
通过实验发现,在不同的包下面把两个action的name设置成一样,处理请求的是第二个action;
然后我又测试在同一个包下面,把两个action的name设置为一样,处理请求的是第二个action;
那么我猜想,既然有同名,相同访问路径的action,并没有报错,那么访问的时候总是最后一个action,目前试验是这样的结果,不知道具体是什么原因呢,为什么会允许这种情况出现呢?
百度和google没有搜索到,群里面也没人回答我,希望早日解惑。加油!
相关文章推荐
- struts2中struts.xml中的action标签的method属性配置为"{1}"的时候是什么意味
- struts-config.xml中配置action的input属性的作用
- struts.xml配置文件(package,namespace,action)
- 在Struts2 中 struts.xml的Action配置详解
- Struts2中struts.xml的Action配置详解
- Struts2 两个Action 动态传参数,在struts.xml中配置
- Struts-config.xml配置文件《action-mappings》元素的详解
- struts2 两个action方法的跳转 struts.xml怎么配置
- struts.xml配置文件(package,namespace,action)
- struts.xml配置及Action操作
- struts.xml配置文件(package,namespace,action)
- Struts 从一个Action跳转到另一个action时xml的配置方式
- Struts2中struts.xml的Action配置详解
- Action的mapping.findFoward(forwardName)必须要在struts-config.xml中的对应的action节点配置一个forward节点
- struts.xml配置文件中的action的各项默认值
- struts.xml配置文件(package,namespace,action)
- Struts 配置拦截器导致 验证的某某Action-vationdation.xml文件不好使的问题
- Struts2学习笔记之与struts.xml配置和Action有关的属性
- 在struts.xml中配置默认Action类(二)
- [转]Struts2中struts.xml的Action配置详解