Struts2--通過Action來獲取表單的三種方式

action獲取表單提交的數據主要的三種方式

(1)使用 actionContext類

(2) 使用ServletActionContext類

(3)使用接口注入的方式

 

一、使用actionContext類

package com.tui;

import java.util.Arrays;
import java.util.Map;
import java.util.Set;

import org.apache.struts2.dispatcher.Parameter;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class Form1DemoAction extends ActionSupport {
  @Override
public String execute() throws Exception {
	// TODO 自動生成的方法存根
  ActionContext actionContext=       ActionContext.getContext();
  Map<String, Parameter>map= actionContext.getParameters();
   Set<String>keys=map.keySet();
   for(String key:keys)
   {
	   Parameter objects=map.get(key);
	System.out.println( objects.getValue());  
   }
  return NONE;
         
}
}

二、使用ServletActionContext類

package com.tui;

import java.util.Arrays;
import java.util.Map;
import java.util.Set;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.dispatcher.Parameter;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class Form1DemoAction2 extends ActionSupport {
  @Override
public String execute() throws Exception {
	// TODO 自動生成的方法存根
	   HttpServletRequest httpServletRequest=   ServletActionContext.getRequest();
	      String username=httpServletRequest.getParameter("uname");
	      String upassword=httpServletRequest.getParameter("upassword");
	      String uaddress=httpServletRequest.getParameter("uaddress");
         System.out.println(username+":"+upassword+":"+uaddress);
	   return NONE;
}
}

三、實現ServletRequestAware接口

package com.tui;

import java.util.Arrays;
import java.util.Map;
import java.util.Set;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.dispatcher.Parameter;
import org.apache.struts2.interceptor.ServletRequestAware;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class Form1DemoAction3 extends ActionSupport implements ServletRequestAware {
  private HttpServletRequest request;

@Override
public void setServletRequest(HttpServletRequest request) {
	// TODO 自動生成的方法存根
	this.request=request;
}
	@Override
public String execute() throws Exception {
	// TODO 自動生成的方法存根
	    String username=request.getParameter("uname");
	    String userpassword=request.getParameter("upassword");
	    String  useraddress=request.getParameter("uaddress");
	    System.out.println(username+":" +userpassword+":"+useraddress);
	    
	   return NONE;
}

}

struts2.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="default" namespace="/" extends="struts-default">
  <action name="form1" class="com.tui.Form1DemoAction">
  </action>
  <action name="form2" class="com.tui.Form1DemoAction2">
  </action>
   <action name="form3" class="com.tui.Form1DemoAction3">
  </action>
</package>
</struts>

實現結果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章