struts2命名空间的用法

来源:互联网 发布:女生 老司机 知乎 编辑:程序博客网 时间:2024/05/05 11:52

访问路径

http://localhost:8080/ceload/web/index.action

 

配置

 

<package name="web" extends="struts-default" namespace="/web">

          <action name="index" class="org.test.action.IndexAction"><result name="success">index.jsp</action>

</package>

 

 

这个配置我也不是太理解,但是从我个人了解,大概就是当访问/web/index.action的时候,首先会匹配命名空间是/web的action,/web应该代表项目下web路径,即如果你的项目叫ceload,那么路径就是 ceload/web  这个路径。最后返回index.jsp的路径是

http://localhost:8080/ceload/web/index.jsp

 

另外从网上看了一些资料说,可以用命名空间做权限管理,想了很久也没想明白,今天用了一下拦截器有了一点想法

让命名空间是web的package包extends一个自定义的一个包,然后这里面的所有请求都会执行父包里的拦截器,例如

 

<package name="ceload-default" extends="struts-default"> 

              <interceptors>

                ........

               <interceptors>

</package>

 

<package name="web" extends="ceload-default" namespace="web"> </package>

 

这样,name=web里的每一个action配置都要执行ceload-default里面的拦截器,从而实现了权限管理,不知道这样想对不对。。。。。。

 

 

原创粉丝点击