struts2提交与接收map
一、action的写法package action.mapAction;import java.util.Map;public class MapAction {
  private Map<String, String> map;  public String test() {
    System.out.println(map.size());
    return "success";
  }  public Map<String, String> getMap() {
    return map;
  }  public void setMap(Map<String, String> map) {
    this.map = map;
  }
}
二 jsp文件2.1 传值页面 index.jsp<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%
  String path = request.getContextPath();
  String basePath = request.getScheme() + "://"
      + request.getServerName() + ":" + request.getServerPort()
      + path + "/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    <title>My JSP 'index.jsp' starting page</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
  </head>  <body>
    <form action="map!test">
      <input type="text" name="map['name']">
      <input type="text" name="map['password']">
      <input type="submit">
    </form>
  </body>
</html>
2.1 接受值页面 success.jsp<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
  String path = request.getContextPath();
  String basePath = request.getScheme() + "://"
      + request.getServerName() + ":" + request.getServerPort()
      + path + "/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
      <title>My JSP 'success.jsp' starting page</title>
      <meta http-equiv="pragma" content="no-cache">
      <meta http-equiv="cache-control" content="no-cache">
      <meta http-equiv="expires" content="0">
      <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
      <meta http-equiv="description" content="This is my page">
  </head>  <body>
    <s:iterator value="map" var="ha">
      <s:property value="#ha.key" />:<s:property value="#ha.value" /><br/>
      </s:iterator>
  </body>
</html>

解决方案 »

  1.   

    我这个url是在json里面的, 我要到后台解析这个json
    获取到这个url
    然后在莱解析这个url.
      

  2.   


    private static Map<String, String> getHeader(String url) {
    Map<String, String> map = new HashMap<String, String>();
    int start = url.indexOf("?");
    if (start >= 0) {
    String str = url.substring(start + 1);
    System.out.println(str);
    String[] paramsArr = str.split("&");
    for (String param : paramsArr) {
    String[] temp = param.split("=");
    map.put(temp[0], temp[1]);
    }
    }
    return map;
    }// http://www.helloWorld.com?para1=123&paral2=456&hello=world
    // output: {hello=world, paral2=456, para1=123}
      

  3.   

    楼上已经给出来了,对字符串进行解析,然后放在map里面!
      

  4.   

    http://www.helloWorld.com?para1=123&paral2=456&hello=worldhttp://www.helloWorld.com?para1=1&2=3&par&a=l2=456&hello=wo&r=ld要是这样你的这个方法还可以嘛?