下面的图说明了location的来历:
查看源码:
6.2.2 Redirect类型(1)、 说明Redirect属于重定向。如果用redirect类型,则在reuqest作用域的值不能传递到前台。
redirectAction类型(1)、说明1、把结果类型重新定向到action
2、可以接受两种参数
a) actionName: action的名字
b) namespace:命名空间
第一种方式:
result name="success" type="redirectAction"resulttype/redirectactionAction.action/result
第二种方式:
result name="success" type="redirectAction"
!--
actionName:
请求的action的路径
namespace:
如果不写,默认就是请求的action的路径,如果写,路径将被重新赋值
--
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)param name="actionName"
resulttype/redirectactionAction.action
/param
/result
(2)、 例子第一种方式:
result name="success" type="redirectAction"resulttype/redirectactionAction.action/result
第二种方式:
result name="success"type="redirectAction"
!--
actionName:
请求的action的路径
namespace:
如果不写,默认就是请求的action的路径,如果写,路径将被重新赋值
--
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)paramname="actionName"
resulttype/redirectactionAction.action
/param
/result
package name=”ss” namespace=”/csdn/csdn”
action=”delete”
/package
package name=”test” namespace=”/csdn”
action=”delete”
/package
package name=”sss” namespace=””
action=”delete”
/package
Action名称的搜索顺序
1、获得请求路径的URI,例如url是:http://server/struts2/path1/path2/path3/test.action
2.首先寻找namespace为/path1/path2/path3的package,如果存在这个package,则在这个package中寻找名字为test的action,如果不存在这个package则转步骤3;
3.寻找namespace为/path1/path2的package,如果存在这个package,则在这个package中寻找名字为test的action,如果不存在这个package,则转步骤4;
4.寻找namespace为/path1的package,如果存在这个package,则在这个package中寻找名字为test的action,如果仍然不存在这个package,就去默认的namaspace的package下面去找名字为test的action(默认的命名空间为空字符串""),如果还是找不到,页面提示找不到action。
Action原型struts2
Prototype 原型 每次请求都会创建一个新的Action对象
Servlet
Singleton 原型 当第一次请求时,创建servlet对象 之后每次都使用该对象即可。
Servlet的生命周期
创建---init---service---destory