`
focus2008
  • 浏览: 27481 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

struts2的一种特殊的提交方法

阅读更多
我们知道一个struts2的action类中,我们可以定义多个方法,不同的web页面的可以提交同一个action类中的不同方法。要实现这种功能,有多中配置方法。下面介绍一种比较好用,又比较简单的方法:
页面代码如下,其中的带有 hidden 属性的 input 中的name="method:test", 表示要将该form提交该 web/login 对应的action中的test方法:
        <form action="web/login" method="post">
        	 <input type="hidden" name="method:test" />
    	姓名:<input name="name" type="text" /> <br />
    	密码:<input name="password" type="password" /> <br />
    	<input type="submit" value="提交" />

Action代码如下:
package test;

import com.opensymphony.xwork2.ActionSupport;

public class Login extends ActionSupport
{
	private String name;
	private String password;
	
	public String execute() throws Exception
	{
		if(!("".equals(name) || "".equals(password)))
			return SUCCESS;
		else
			return INPUT;
	}
	
	public String test() throws Exception
	{
		return "test";
	}

	public String getName()
	{
		return name;
	}

	public void setName(String name)
	{
		this.name = name;
	}

	public String getPassword()
	{
		return password;
	}

	public void setPassword(String password)
	{
		this.password = password;
	}
}

配置文件如下:
<struts>

	<package name="login" namespace="/web" extends="struts-default">
		<action name="login" class="test.Login">
			<result name="input" type="dispatcher">/web/login.jsp</result>
			<result name="success" type="dispatcher">/web/welcome.jsp</result>
			<result name="test" type="dispatcher">/web/test.jsp</result>
		</action>
	</package>
	
</struts>    

这种方法的优点是:
1)不需要在struts的配置文件中配置多个action,每一个action类只要配置单独的一个配置项。
2)采用 actionName!method="test" 的方式,需要js来辅助。该提交方式,只需要一个隐藏的intput就解决了。十分简洁有效。

分享到:
评论

相关推荐

    struts2学习笔记黑马程序员

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于读写且被广泛应用于Web应用的数据传输中。其核心特性在于独立于编程语言的文本格式,易于解析与生成。 **JSON结构** 1. **对象**:以花括号`{...

    Struts2文件上传源码

    Struts2是一个流行的Java Web框架,它为开发者提供了一种优雅的方式来构建可维护、可扩展且结构清晰的Web应用程序。在Struts2中,文件上传是常见的功能之一,尤其是在处理用户提交表单时,比如上传图片、文档等。...

    Struts2入门教程(全新完整版)

    一、准备工作及实例 3 1.解压struts-2.1.6-all.zip 3 2.六个基本包 3 3.初识struts2配置文件 4 ... 下面对struts2的基本执行流程作一简要说明,此流程说明可以结合官方提供的struts2结构图来看: 60

    struts2的日期回显

    Struts2是一个流行的Java web框架,它为开发者提供了一种组织和构建MVC(Model-View-Controller)应用程序的方式。在Struts2中,日期回显是指在表单提交后,若验证失败或者用户需要重新填写信息时,框架能够将之前...

    struts2注册转换器

    Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java Web开发中。在Struts2中,类型转换是处理用户输入数据的关键环节,它允许开发者将前端表单提交的数据转换为服务器端可处理的类型。在本案例中,...

    Struts2+jQuery(不用JSON)实现局部刷新

    Struts2和jQuery是两种非常流行的开源技术,它们在Web开发中有着广泛的应用。Struts2作为MVC框架,主要用于处理后端业务逻辑,而jQuery则是一个强大的JavaScript库,简化了前端DOM操作、事件处理以及AJAX交互。在这...

    struts2的详细资料

    总的来说,Struts2框架通过其强大的UI标签库和对AJAX的支持,提供了一种高效且灵活的方式来构建交互式的Web应用。理解并熟练运用这些概念和工具,将极大地提升Java Web开发的效率和应用的质量。

    struts2数据类型转换器

    Struts2是一个非常流行的Java Web框架,它提供了一种优雅的方式来组织和控制应用程序的流程,同时也简化了MVC(模型-视图-控制器)架构的实现。在Struts2中,数据类型转换器是一个关键组件,它负责将HTTP请求参数...

    Struts2 自定类型转换器(三十四)

    在Struts2框架中,自定义类型转换器是开发者为了满足特定需求,对框架默认的类型转换机制进行扩展的一种方式。Struts2允许我们创建自己的转换器类来处理输入数据,确保模型对象的属性能够正确地被转换为预期的数据...

    struts2基础入门pdf,struts2全面介绍

    - **拦截器基础**:拦截器是一种特殊的功能,可以在请求到达Action之前或之后执行一些特定的操作,如权限控制、性能监控等。 - **使用拦截器**:在struts.xml配置文件中定义拦截器,并将其应用于具体的Action。 - **...

    validate in struts2

    Struts2是一个流行的Java Web框架,它提供了丰富的功能来帮助开发者构建MVC(Model-View-Controller)架构的应用程序。在Struts2中,验证是一个关键部分,用于确保用户输入的数据是有效和安全的。本篇文章将深入探讨...

    struts2类型转换convertToString不被调用的疑惑

    在处理用户输入时,Struts2提供了一种类型转换机制,以确保从HTTP请求参数到Action类属性的自动类型匹配。然而,有时开发者可能会遇到一个情况,即自定义的`convertToString`方法在预期的情况下没有被调用,这通常是...

    struts2文件上传

    1. **Multipart请求**:在HTTP协议中,文件上传通常涉及到`multipart/form-data`编码类型,这是一种特殊的数据编码方式,允许在一个表单中同时提交文本数据和二进制文件。 2. **Servlet 3.0及以上版本**:Struts2...

    第12章 开发Struts2+Spring应用.pdf

    Struts2作为一种改进的Web开发框架,相比Struts1更加灵活且易于扩展。Struts2采用了插件机制、拦截器技术、依赖注入等先进特性,使得开发者能够更加高效地构建复杂的Web应用程序。与传统的Struts1相比,Struts2不再...

    struts2验证框架

    在Struts2中,表单验证可以通过两种方式实现:一种是基于XML的配置,另一种是通过注解的方式。 ### 1. XML配置验证 在Struts2中,我们可以创建一个名为`struts.xml`或`struts-default.xml`的配置文件,其中包含...

    struts2的s标签

    Struts2提供了丰富的标签库,其中“S标签”(S-tags)是一种特殊的标签集合,用于简化页面上的数据绑定以及页面逻辑处理。S标签的设计目标是减少对脚本语言(如JSP EL表达式或脚本let)的依赖,并且提高页面的可读性...

    详解Struts2中配置默认Action的方法

    Struts2是一个基于MVC模式的web应用程序框架,它提供了一种灵活的方式来处理用户请求和响应。在Struts2中,Action是一个核心概念,它负责处理用户请求和执行业务逻辑。但是,在某些情况下,我们可能需要配置默认...

    struts2牛人分享PPT

    - **OGNL**(Object-Graph Navigation Language):一种功能强大的表达式语言,用于获取或设置对象的属性。 - 在HTML表单中使用OGNL表达式: ```html ``` - 通过OGNL表达式语言来存取对象的属性。 #### 九、...

    struts2中文乱码

    本文将深入分析Struts2中文乱码的原因,并提供一种通过自定义过滤器来解决该问题的方法。 #### 二、Struts2中文乱码原因分析 1. **客户端与服务器端编码不一致**:客户端提交的数据和服务器端接收的数据编码格式...

    struts2枚举值、日期值转换示例

    首先,枚举(Enum)在Java中是一种特殊的类,用于表示有限集合中的固定数量的值。在Struts2中,如果Action类的属性是枚举类型,系统默认可能无法正确地将字符串请求参数转化为枚举实例。为了解决这个问题,我们可以...

Global site tag (gtag.js) - Google Analytics