一、后台获取前台传递的参数方式
例1:Action.do?step=orderList&ids=11&ids=22&ids=33&per=44&per=55&per2=66
下面是通过System.out.println();打印得到的结果
(1)String id = request.getParameter("ids");
// 11 -- 获取到第一个数据
(2)String[] ids = request.getParameterValues("ids");
// [Ljava.lang.String;@518924 -- 存有字符串数组[11, 22, 33]
(3)Map map = request.getParameterMap();
// {ids=[Ljava.lang.String;@102b23d, per=[Ljava.lang.String;@3f9ad, step=[Ljava.lang.String;@fd0d7d, per2=[Ljava.lang.String;@180a5bf}
// 参数的键值对map集合
(4)Enumeration enu = request.getParameterNames();
//java.util.Collections$1@101aec1 -- 参数名的枚举[ids, per, per2, step]
(5)List list = (List)request.getAttribute("ids");
// null -- 无法获取到值
// getAttribute及setAttribute多用于后台数据请求转发时使用
例2:传递数组
<javascript>
var arr = new Array();arr[0] = "order"; ...
url="Action.do?step=orderList&arr="+arr
</javascript>
<java.Action>
String arr = request.getParameter("arr"); // order,3,4,5,8,12 -- 获取到数组元素用“,”拼接的字符串
String[] arrA = request.getParameterValues("arr"); // [order,3,4,5,8,12] -- 获取到字符串数组
</java.Action>
二、
request.setAttribute 和 request.getAttribute 实现
<%String str = (String)request.getAttribute("orderArr");%>
var order = <%=str%>;
前后台数据交换
最新推荐文章于 2020-10-26 21:15:00 发布