当前位置:主页 > 软件编程 > JAVA代码 >

Struts2学习笔记(9)-Result配置全局结果集

时间:2021-02-17 14:01:13 | 栏目:JAVA代码 | 点击:

Result可以设定全局结果集,如:

<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> 

其中

<global-results> 
  <result name="mainpage">/main.jsp</result> 
</global-results>

就是设定的全局结果集,在这种方式下,所有的user包内的result只要是返回“mainpage”,都会跳转到main.jsp页面,它用途很多,最常用的就是用户填写url错误时,跳转到主页或者是error页面。那么在其他包下如何也使用全局结果集呢?

如上面的

<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写到其中,其他包只需继承这个包即可。

您可能感兴趣的文章:

相关文章