Struts中的namespace

在Struts中的namespace: (Namespace最好用模块来进行命名, 且 '/'所代表的都是项目的跟目录)

在struts.xml文件种,对每一个action都是放置于一个namespace下的,默认情况是放在 "/" 根下面的(项目的根目录)

1. 在页面中的form等中填写action的地方,不能以 ‘/’ 开始(如:/loginA) , 不然就会进入webServer服务器的根目录, 即:localhost/loginA.action。

2.在struts.xml中,配置namespace以 "/" 开头。

3.在Struts中的默认情况action的根目录的页面文件(jsp等)目录在同一目录下,即项目的跟路劲,如:http://localhost/SSHEDemo/

4.若是在页面文件中,添加了文件目录,如以下 pages :


那么访问地址则变为: http://localhost/SSHEDemo/pages/login.jsp, 若是Action的package中填写namespace属性,如login

<package name="default" extends="struts-default"  namespace="/login">
则在页面中,action的上一级目录为文件夹目录(pages),若需要正确寻找到该namespace的action,需要使用相对路劲,保持也struts.xml文件中同一级目录,既项目的根目录。

如:在login.jsp文件中需如下配置:

<form action="../login/loginA">
注:只要struts.xml中配置了namespace属性,就需要使用相对路径返回根目录,如namespace="/",则 
<form action="../loginA">

另:在Jsp页面中的Form中的Action可以不用填写任何前缀,而直接填写 Action的名字:如

<form action="..loginA">

而此时则更具,此jsp页面的上一级目录名作为namespace,来寻找action,如在此处寻找的路径为:/pages/loginA -->/loginA

4. 在struts2中,action的查找是采用精确查找的方式寻早,根据namespace向上一级一级寻找,找到则使用,找不到则报错。

以上配置的寻找路劲为: 首先保证其路劲在根目录中:

<form action="../login/loginA">

然后根据  /login/loginA   --> /loginA 寻址(不会跳过文件目录)
若namespace为 namespace="/", 则寻找路劲为: /loginA



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值