一:方式一:通过request来获取,首先让action实现ServletRequestAware接口,然后通过request来获取提交的参数,代码如下:

package cn.gov.csrc.flight.action;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.json.annotations.JSON;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import cn.gov.csrc.base.action.BaseAction;
import cn.gov.csrc.cms.model.UserInfo;
import cn.gov.csrc.cms.service.UserService;
import cn.gov.csrc.flight.model.Flgtinfo_D;
import cn.gov.csrc.flight.service.FlgtinfodService;

@Controller
@ParentPackage("json-default")
@Scope("prototype")
public class FlgtinfodAction extends BaseAction<Flgtinfo_D> implements ServletRequestAware{

private static final long serialVersionUID = 1L;

private FlgtinfodService flgtinfodService;

private Map<String, Object> dataMap;

HttpServletRequest request;

public FlgtinfodAction(){
dataMap = new HashMap<String, Object>();
}

@Resource
public void setFlgtinfodService(FlgtinfodService flgtinfodService) {
this.flgtinfodService = flgtinfodService;
}

@Action(value = "FlgtinfodAction_detail", results = { @Result(name = "success", type = "json", params = {"root", "dataMap" }) })
public String detail(){
dataMap.clear();
//查询出港详情(根据用户id,列表到详情的唯一编号)
String id = this.request.getParameter("id");
Flgtinfo_D flgtinfo_D = flgtinfodService.getEntity(id);
String airline2 = flgtinfo_D.getAirline();
// 出港详情放入到dataMap中
dataMap.put("flgtinfo_D", flgtinfo_D);
// 放入一个是否操作成功的标识
dataMap.put("success", true);
return "success";
}

public Map<String, Object> getDataMap() {
return dataMap;
}

@Override
public void setServletRequest(HttpServletRequest request) {
this.request = request;
}

}


二:方式二,直接在action里面写你要提交的参数,然后提供set,get方法,代码如下:

package cn.gov.csrc.flight.action;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.json.annotations.JSON;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import cn.gov.csrc.base.action.BaseAction;
import cn.gov.csrc.cms.model.UserInfo;
import cn.gov.csrc.cms.service.UserService;
import cn.gov.csrc.flight.model.Flgtinfo_D;
import cn.gov.csrc.flight.service.FlgtinfodService;

@Controller
@ParentPackage("json-default")
@Scope("prototype")
public class FlgtinfodAction extends BaseAction<Flgtinfo_D>{

private static final long serialVersionUID = 1L;

private Integer id; // 列表到详情的唯一标识

private FlgtinfodService flgtinfodService;

private Map<String, Object> dataMap;

public FlgtinfodAction(){
dataMap = new HashMap<String, Object>();
}

@Resource
public void setFlgtinfodService(FlgtinfodService flgtinfodService) {
this.flgtinfodService = flgtinfodService;
}

@Action(value = "FlgtinfodAction_find", results = { @Result(name = "success", type = "json", params = {"root", "dataMap" }) })
public String find() {
dataMap.clear();
//查询出港信息
List<Flgtinfo_D> list = flgtinfodService.findAllFlgtinFods();
// 出港信息放入到dataMap中
dataMap.put("list", list);
// 放入一个是否操作成功的标识
dataMap.put("success", true);
return "success";
}

@Action(value = "FlgtinfodAction_detail", results = { @Result(name = "success", type = "json", params = {"root", "dataMap" }) })
public String detail(){
dataMap.clear();
//查询出港详情(根据用户id,列表到详情的唯一编号)
id = model.getId();
Flgtinfo_D flgtinfo_D = flgtinfodService.getEntity(id);
String airline2 = flgtinfo_D.getAirline();
// 出港详情放入到dataMap中
dataMap.put("flgtinfo_D", flgtinfo_D);
// 放入一个是否操作成功的标识
dataMap.put("success", true);
return "success";
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public Map<String, Object> getDataMap() {
return dataMap;
}


}