Result可以设定全局结果集,如:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
< struts >
< constant name = "struts.devMode" value = "true" />
< package name = "user" namespace = "/user" extends = "struts-default" >
< global-results >
< result name = "mainpage" >/main.jsp</ result >
</ global-results >
< action name = "index" >
< result >/index.jsp</ result >
</ action >
< action name = "user" class = "com.bjsxt.struts2.user.action.UserAction" >
< result >/user_success.jsp</ result >
< result name = "error" >/user_error.jsp</ result >
</ action >
</ package >
< package name = "admin" namespace = "/admin" extends = "user" >
< action name = "admin" class = "com.bjsxt.struts2.user.action.AdminAction" >
< result >/admin.jsp</ result >
</ action >
</ package >
</ struts >
|
其中
1
2
3
|
< global-results >
< result name = "mainpage" >/main.jsp</ result >
</ global-results >
|
就是设定的全局结果集,在这种方式下,所有的user包内的result只要是返回“mainpage”,都会跳转到main.jsp页面,它用途很多,最常用的就是用户填写url错误时,跳转到主页或者是error页面。那么在其他包下如何也使用全局结果集呢?
如上面的
1
2
3
4
5
|
< package name = "admin" namespace = "/admin" extends = "user" >
< action name = "admin" class = "com.bjsxt.struts2.user.action.AdminAction" >
< result >/admin.jsp</ result >
</ action >
</ package >
|
这个是包的继承关系,admin包继承自user包,所以他就具有了所有user包下的属性,这个非常好用,当我们有很多公共的页面需要显示时,可以用一个包作为这些包的父类包,把这些公共的result写到其中,其他包只需继承这个包即可。
以上就是Struts2中使用Result配置全局结果集的全部内容,希望能给大家一个参考,也希望大家多多支持服务器之家。