一个form中不同按钮调用同一个Action中的不同方法

在基本Struts框架下建立一张JSP页面,一个Action类,并且在Struts.xml文件中配置这个Action的路径。

测试页面:Test.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
   <head>
   </head>
   <body>

      <font color="red">${result}</font>
      <s:form action="test.do">
          <s:submit name="method1" method="method1" value="方法1"></s:submit>
          <s:submit name="method2" method="method2" value="方法2"></s:submit>
      </s:form>
 </body>
</html>  


Action类:TestAction.java

package Struts.action;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.interceptor.ServletRequestAware;

import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings("serial")
public class TestAction extends ActionSupport implements ServletRequestAware{
 
 private HttpServletRequest request;
 
 public void setServletRequest(HttpServletRequest request){
  this.request = request;
 }
 
 public String method1() throws Exception{
  request.setAttribute("result","method1");
  return "test";
 }
 
 public String method2() throws Exception{
  request.setAttribute("result", "method2");
  return "test";
 }

} 

 


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="action" extends="struts-default">

  <action name="test" class="Struts.action.TestAction">
      <result name="test">Test.jsp</result>
  </action>

 </package>

</struts> 
 

 

通过不同的按钮对应不同的method,访问同一个Action中不同的方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值