struts2的一种特殊的提交方法_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > struts2的一种特殊的提交方法

struts2的一种特殊的提交方法

 2013/10/27 15:57:39  focus2008  程序员俱乐部  我要评论(0)
  • 摘要:我们知道一个struts2的action类中,我们可以定义多个方法,不同的web页面的可以提交同一个action类中的不同方法。要实现这种功能,有多中配置方法。下面介绍一种比较好用,又比较简单的方法:页面代码如下,其中的带有hidden属性的input中的name="method:test",表示要将该form提交该web/login对应的action中的test方法:<formaction="web/login"method="post">[b]<
  • 标签:方法 struts
我们知道一个struts2的action类中,我们可以定义多个方法,不同的web页面的可以提交同一个action类中的不同方法。要实现这种功能,有多中配置方法。下面介绍一种比较好用,又比较简单的方法:
页面代码如下,其中的带有 hidden 属性的 input 中的name="method:test", 表示要将该form提交该 web/login 对应的action中的test方法:
class="java" name="code">
        <form action="web/login" method="post">
        	 [b]<input type="hidden" name="method:test" />[/b]
    	姓名:<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就解决了。十分简洁有效。

发表评论
用户名: 匿名