在Struts2中result的视图转发类型比较常用的有四种:dispathcher(默认值):服务器内部请求转发类型; redirect:重定向到某个jsp文件; redirectAction:重定向到某个action; plainText:他主要用在输出页面源代码。
在struts.xml中配置如下:
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE struts PUBLIC
3 "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
4 "http://struts.apache.org/dtds/struts-2.0.dtd">
5
6 <struts>
7 <package name="lz" namespace="/control/employee" extends="struts-default">
8 <!-- 浏览器重定向到修改界面 -->
9 <action name="redirect" class="com.lz.action.UserName" method="execute">
10 <result name="success" type="redirect">/redirect.jsp?username=${Savepath}</result>
在web.xml中:
1 <?xml version="1.0" encoding="UTF-8"?>
2 <web-app version="2.4"
3 xmlns="http://java.sun.com/xml/ns/j2ee"
4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
6 http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
7
8 <filter>
9 <filter-name>struts2</filter-name>
10 <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
11 </filter>
12 <filter-mapping>
13 <filter-name>struts2</filter-name>
14 <url-pattern>/*</url-pattern>
15 </filter-mapping>
16
17 <welcome-file-list>
18 <welcome-file>index.jsp</welcome-file>
19 </welcome-file-list>
20 </web-app>
再定义一个UserName.java
1 package com.lz.action;
2
3 import java.net.URLEncoder;
4
5 public class UserName {
6 private String Savepath;
7
8 public void setSavepath(String savepath) {
9 Savepath = savepath;
10 }
11
12 public String getSavepath() {
13 return Savepath;
14 }
15
16 public String execute()throws Exception
17 {
18 Savepath=URLEncoder.encode("天下第一","utf-8");
19
20 return "success";
21 }
22
23 }
页面代码:
<%@ page language="java" import="java.util.*,java.net.URLDecoder" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>redrect</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
</head>
<body>
<%= URLDecoder.decode(new String(request.getParameter("username").getBytes("ISO8859-1"),"UTF-8"),"UTF-8") %><br/>
<%= URLDecoder.decode(new String(request.getParameter("username").getBytes("ISO8859-1"),"UTF-8"),"UTF-8")%>
</body>
</html>
这样,运行。页面上就会出现“天下第一”四个字。
接下来是redirectAction类型。在struts.xml增加action标签。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="lz" namespace="/control/employee" extends="struts-default">
<action name="redirectAction" class="com.lz.action.UserName" method="execute">
<result name="success" type="redirectAction">/hello</result>
</action>
</package>
<package name="other" namespace="/control/department" extends="struts-default">
<action name="redirect">
<result>/index.jsp</result>
</action>
</package>
</struts>
还有最后一种:plainText。他主要用在输出页面源代码。
如下所示:修改struts.xml文件。
<action name="plainText">
<result type="plainText">
<param name="location">/redirect.jsp</param>
<param name="charSet">UTF-8</param><!-- 制定读取文件的编码 -->
</result>
</action>
<%@ page language="java" import="java.util.*,java.net.URLDecoder" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>redrect</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
</head>
<body>
你好!
</body>
</html>
这样,就可以输出redirect.jsp的源码了。并且可以支持中文格式的了。
分享到:
相关推荐
这篇博文将深入探讨Struts2中的result配置以及各种视图转发类型。 首先,让我们理解Result的基本概念。在Struts2的配置文件(如struts.xml)中,每个Action可以有多个结果,每个结果对应一个特定的视图。Result配置...
esult配置的各种视图转发类型esult配置的各种视图转发类型esult配置的各种视图转发类型
本教程主要围绕"传智播客_result的各种视图转发类型及全局"展开,这涉及到Struts2框架中的Action结果处理方式以及全局配置。 首先,Struts2中的Action结果类型是连接Action和视图的桥梁。当一个Action执行完毕后,...
Struts 2是Struts的下一代产品,是在 struts 和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理...
Struts2内置了多种结果类型,如dispatcher(重定向或转发到一个JSP页面)、stream(下载文件)等,也可以自定义结果类型。 5. **OGNL(Object-Graph Navigation Language)**:Struts2使用OGNL作为默认表达式语言,...
6. **OGNL(Object-Graph Navigation Language)**:Struts2使用OGNL作为默认表达式语言,它用于在Action和视图之间传递数据,使得数据绑定变得简单。 7. **Plug-in架构**:Struts2的插件架构允许开发者轻松地扩展...
“Struts2.3.1.2_API.chm”文档包含了Struts2框架的详细API,其中涵盖了各个主要类和接口的解释、方法签名、参数说明以及返回值类型。开发者可以通过查阅此文档,快速查找特定功能的实现方式,例如ActionSupport类,...
Struts2支持多种结果类型,如dispatcher(转发到JSP)、stream(下载文件)、redirect(重定向)。结果配置可以根据Action执行的结果(success、error等)决定跳转到哪个视图。 在提供的“struts2 demo”压缩包中,...
4. **结果类型(Result Types)**:Struts2支持多种结果类型,如`dispatcher`(默认,将结果转发到JSP页面)、`stream`(用于文件下载)、`redirect`(重定向URL)等,可以根据不同的需求选择合适的结果类型。...
Struts2是一个强大的MVC(模型-视图-控制器)框架,它在Java Web开发中广泛应用,为开发者提供了构建可维护、可扩展的Web应用程序的结构。本资源包含的"Struts2全部jar包"是搭建Struts2项目的基础,确保了所有必要的...
Struts2是一个强大的MVC(模型-视图-控制器)框架,用于构建Java Web应用程序。在Struts2中,Result是Action执行后控制流程的重要组件,它定义了Action执行完毕后如何转发或重定向到一个新的页面。"redirectAction...
- **MVC 架构**:Struts2 采用经典的 MVC 架构,分为模型(Model)、视图(View) 和控制器(Controller) 三个部分。 - **模型**:主要负责处理业务逻辑和数据访问,常用 JavaBean 或 EJB 实现。 - **视图**:负责向...
Struts2是一个强大的Java web应用程序框架,用于构建MVC(模型-视图-控制器)架构的应用。这个API帮助文档是开发者在使用Struts2框架时的重要参考资料,它详细阐述了框架的各种组件、类库和方法,有助于理解并有效...
在实际开发中,Struts2支持多种视图技术,如JSP、FreeMarker、Velocity等,使得开发者可以根据项目需求选择最适合的模板语言。Action结果类型也是多样化的,可以返回字符串、Stream、甚至重定向或转发到其他页面。 ...
7. **结果类型**:Struts2支持多种结果类型,如dispatcher(用于转发到JSP页面)、stream(用于处理文件下载)、freemarker或velocity(用于模板引擎渲染)等。开发者可以根据需要选择或自定义结果类型。 8. **国际...
4. **配置文件**: `struts.xml`是Struts2的主要配置文件,定义了Action、Interceptor、结果类型等。通过这个文件,开发者可以控制Action的映射、拦截器链的设置以及结果的跳转规则。 5. **Plug-in(插件)**: ...
Struts2支持多种结果类型,如dispatcher(用于转发到JSP页面),stream(用于处理文件下载)等。 5. **OGNL(Object-Graph Navigation Language)**:Struts2使用OGNL作为默认表达式语言,用于在Action和视图之间...
5. **结果类型与视图解析**:Struts 2支持多种结果类型,如dispatcher(用于转发到JSP)、stream(用于下载文件)等。结果类型定义了Action执行后的跳转方式。视图通常是JSP页面,通过OGNL(Object-Graph Navigation...
Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、结构清晰的MVC(模型-视图-控制器)架构应用。这个“struts2完整例子”压缩包提供了学习和理解Struts2核心概念的实际示例。让我们深入探讨一下...