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>
一、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>
获取到这个url
然后在莱解析这个url.
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¶l2=456&hello=world
// output: {hello=world, paral2=456, para1=123}