`
focus2008
  • 浏览: 26511 次
  • 性别: 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对Action提交方法进行验证

    但是这样做,不好之处就是我们可以通过人为的将开发者的验证js注掉,这样就导致验证失败,对后台安全性是一个很大的威胁,在采用struts2进行...本附件为【Struts2】★☆之struts2对Action提交方法进行验证,下载源码!

    Struts2防止重复提交解决方案

    防止重复提交的总要解决方案 相信对struts的学者有帮助 大家看看

    struts1和struts2的区别

    struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别struts1和struts2的区别...

    struts2 防止表单重复提交的例子

    这里是Struts2 中放置表单重复提交的例子。

    Struts2解决表单重复提交

    struts2中对表单重复提交的处理方法;包括处理两种典型的表单重复提交的思路和方法

    Struts2防止表单重复提交

    2) 二是,forward跳转引起的重复提交。当用户将信息提交到服务器,服务器响应采用forward方式调转到下一个页面后,此时地址栏中显示的是上个页面的URL,若刷新当前页面,浏览器会将再次提交用户先前输入的数据,就会...

    struts2令牌解决页面重复提交问题

    struts2令牌解决页面重复提交问题,资源中包含一个实例代码

    Struts2_动态方法调用

    Struts2_动态方法调用,使用struts2架构的动态方法进行资源调用

    struts2批量提交数据

    struts提交list数据,批量保存到数据库。

    Struts2动态方法调用

    Struts2动态方法调用 包括 1.js方法调用 2.普通的表单提交调用 3.通配符

    struts2利用token防止表单重复提交(源代码)

    struts2防止表单重复提交,利用struts的拦截器tokenSession,轻轻松松解决表单重复提交的问题。 附件为源代码,后台延迟了3秒,可直接在web服务器下部署运行,输入用户名和密码后,多点几次提交按钮,然后看控制台...

    struts2-core.jar

    struts2-core-2.0.1.jar, struts2-core-2.0.11.1.jar, struts2-core-2.0.11.2.jar, struts2-core-2.0.11.jar, struts2-core-2.0.12.jar, struts2-core-2.0.14.jar, struts2-core-2.0.5.jar, struts2-core-2.0.6.jar,...

    struts2 总结工程大全

    struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全...

    struts2 资料struts2 资料struts2 资料struts2 资料

    struts2 资料struts2 资料struts2 资料struts2 资料

    Struts2 防重复提交Demo

    Struts2 防重复提交Demo 利用Struts2自带的s:token写的防数据重复提交策略.

    Struts2视频教程

    目前已有大量的企业项目采用Struts2来作为Web框架进行开发,掌握Struts2是每个进行Web开发的Java程序员的一项必备技能。 本视频对Struts2的庞杂技术点进行抽丝剥茧,提炼出企业开发必备的核心技术点和重要技能。视频...

    struts2技术内幕+struts2权威指南

    知识准备篇首先介绍了获取、阅读和调试Struts2源代码的方法,以及Struts2源代码的组织形式;然后厘清了Web开发中极易混淆的一些重要概念,以及Struts2的核心技术、宏观视图、微观元素、配置元素等,提纲挈领地对...

    Struts2调试方法

    Struts2,调试,调试方法

    struts2案例 struts2 struts2源码

    struts2源码 struts2案例 struts2使用包

Global site tag (gtag.js) - Google Analytics