`
Leon.Wood
  • 浏览: 288319 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Struts2笔记 - 03 result配置的各种视图转发类型

阅读更多

result配置的各种视图转发类型

 

Strust2中的几种转发类型


dispatcher(默认)、redirect、redirectAction、plainText

<result type="redirect">/xxx.jsp</result>

■<------------redirect--------->
【ognl表达式】

<action name="redirect" class="struts2.demo.action.DemoAction">
 <result type="redirect">/target.jsp?uid=${uid}</result>
</action>

 

 

可以采用ognl表达式访问action中的属性

 

package struts2.demo.action;
public class DemoAction{
 private String uid;
 public void setUid(String uid){
  this.uid=uid; 
 }
 public String getUid(){
  return this.uid;
 }
 public String execute(){
  this.setUid("ABC");
  return "success";
 }
}

 

 

这样重定向之后的页面路径为
http://127.0.0.1:8080/Struts2/target.jsp?uid=ABC

注意:如果要传递中文则需要编码

URLEncoder.encode("中文","utf-8");

 

 

在jsp页面上可以采用${param.uid}来获取参数值 如果值为中文需要转码

URLDecoder.decode(new String(request.getParameter("uid").getBytes("ISO-8859-1"),"utf-8"),"utf-8");

 

 

■<------------redirectAction--------->

<action name="redirect" class="struts2.demo.action.DemoAction">
 <result type="redirectAction">
  helloworld
 </result>
</action>

 

如果要重定向到其他命名空间下的action则需要采用param属性

 

<package name="pack1" namespace="/demo" extends="struts-default">
<action name="helloworld" class="struts2.demo.action.HelloWorldAction">
 <result>/WEB-INF/hello.jsp </result>
</action>
</package>

<package name="pack2" namespace="/demo" extends="struts-default">
<action name="redirect" class="struts2.demo.action.DemoAction">
 <result type="redirectAction">
  <param name="actionName">helloworld</param>
  <param name="namespace">/demo</param>
 </result>
</action>
</package>

 


■<------------plainText--------->
原样显示视图的源代码

如果要显示中文则需要注入一下编码类型

<result type="plainText">
 <param name="location">helloworld</param>
 <param name="charSet">utf-8</param>
</result>

 

■配置共用视图

<package name="pack1" namespace="/demo" extends="struts-default">
<global-results>
 <result name="head">/WEB-INF/skin/head.jsp</result>
</global-results>
<action name="helloworld" class="struts2.demo.action.HelloWorldAction">
 <result>/WEB-INF/hello.jsp</result>
</action>
</package>

 

 

public class HelloWorldAction{
 public String execute(){
  return "head";
 }
}

 
此处配置的global-results只可以在当前包中共用 如果想要所有包共用可以将其放入一个base包中 然后让所有package继承这个base包

分享到:
评论

相关推荐

    struts-2.3.4笔记

    结果配置在 struts.xml 文件中,通过 `&lt;action&gt;` 和 `&lt;result&gt;` 标签定义。 2. **拦截器(Interceptors)**:拦截器是 Struts 2 中的关键组件,它们在 Action 执行前后执行一些预定义的任务,如登录检查、日志记录...

    struts2 学习重点笔记

    - **MVC 架构**:Struts2 采用经典的 MVC 架构,分为模型(Model)、视图(View) 和控制器(Controller) 三个部分。 - **模型**:主要负责处理业务逻辑和数据访问,常用 JavaBean 或 EJB 实现。 - **视图**:负责向...

    struts2学习笔记(完美总结)——转自OPEN经验库

    本文将深入探讨Struts2的核心概念,包括Action、Result、配置文件、OGNL与ValueStack、Tags以及项目中的关键实践。 **一、Action** Action是Struts2中处理业务逻辑的核心组件,它是实现了`...

    黑马程序员Struts2笔记

    本笔记主要涵盖了Struts2的基础知识,包括但不限于配置、Action、拦截器、结果类型以及异常处理等内容。 1. **Struts2框架简介** Struts2是Apache软件基金会的一个开源项目,它是Struts1的升级版,弥补了Struts1在...

    struts2四天的学习笔记

    13. ** strut2四天笔记**:这份学习笔记可能涵盖了以上所有知识点,包括如何创建Action,配置struts.xml,使用OGNL表达式,处理异常,以及实践中的各种技巧和最佳实践。 在四天的学习过程中,你应该通过实践和理解...

    struts2课程笔记

    本课程笔记主要涵盖了Struts2的基础概念、核心功能及其工作流程。 首先,Struts2的处理流程是通过一系列的组件协作完成的,包括Filter Dispatcher(过滤器调度器)、Action、Interceptor(拦截器)和Result。当用户...

    struts2笔记

    Struts2是一个强大的Java web应用程序开发框架,它简化了MVC(模型-视图-控制器)设计模式的实现,提供了一种组织应用结构和处理HTTP请求的强大方式。本笔记将深入探讨Struts2的核心概念、执行流程、类型转换、输入...

    马士兵Struts2笔记2013

    Struts2是一个流行的Java web框架,...以上就是"马士兵Struts2笔记2013"中涉及的主要知识点,这些内容涵盖了Struts2的基础配置、数据处理、验证、调试以及与视图层的交互等方面,对于理解和掌握Struts2框架非常有帮助。

    struts2 配置jar包和超详细笔记

    本笔记将详细阐述Struts2的配置过程及核心jar包的使用。 一、Struts2概述 Struts2是Apache软件基金会的开源项目,它继承了Struts1的优点并解决了其局限性,提供了更加优秀的行动(Action)控制、拦截器...

    Struts2框架笔记

    2. **struts.xml文件**: 此文件是Struts2的主要配置文件,用于定义应用程序的业务逻辑,如Action映射、拦截器栈等。 - **配置示例**: ```xml &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE struts PUBLIC ...

    struts2笔记html版本

    6. **插件机制**:Struts2支持丰富的插件,如Freemarker和JSP作为视图技术,Tiles作为布局管理,以及各种数据校验和国际化插件。 7. **OGNL表达式语言**:OGNL是Struts2中用于访问和设置对象属性的强大表达式语言,...

    struts2 笔记(根据尚硅谷视频所记)

    Struts2是一个强大的MVC框架,它为Java Web应用程序提供了模型-视图-控制器的设计模式。在本笔记中,我们将深入探讨Struts2的核心配置文件`struts.xml`及其主要配置元素。 首先,`struts.xml`是Struts2的核心配置...

    Struts2学习笔记

    ### Struts2学习笔记知识点概览 #### 一、Struts的作用 - **核心功能**:Struts2框架的核心功能之一就是将业务逻辑与展示层分离,实现MVC(Model-View-Controller)架构模式。这有助于提高代码的可维护性、可扩展...

    struts2学习笔记

    Struts2是一个流行的Java web应用程序框架,用于构建MVC(模型-视图-控制器)架构的应用。在深入探讨Struts2的学习笔记之前,先来理解它的核心概念。 **1. Struts2依赖的JAR包** Struts2的运行离不开一系列的依赖库...

    struts2笔记 风中叶

    Struts2支持多种结果类型(Result Types),如`dispatcher`(默认的HTTP重定向或转发)、`stream`(用于下载文件)和`freemarker`(与FreeMarker模板引擎集成显示视图)。这些结果类型使得Struts2能灵活地处理动作...

    struts2详细学习笔记

    Struts2是一个强大的Java EE应用程序开发框架,专用于构建基于MVC(模型-视图-控制器)模式的Web应用。它的出现极大地简化了Java Web应用的开发,通过提供丰富的插件和灵活的配置机制,使得开发者可以快速地构建出...

    struts2 笔记

    Result是Action执行后的响应结果,Struts2提供了多种Result类型: - Dispatcher Result:默认结果类型,通常用于转发到JSP页面。 - Redirect Action Result:将请求重定向到另一个Action。 - Chain Result:链式处理...

    Struts2使用笔记

    - **Xwork**:Xwork是Webwork的前身,Struts2在其基础上构建,提供了动作调度、类型转换、拦截器等功能。 - **OGNL (Object-Graph Navigation Language)**:Struts2使用OGNL作为表达式语言,用于在Action和视图...

Global site tag (gtag.js) - Google Analytics