首页 > 代码库 > js对象传到后台ACTION使用

js对象传到后台ACTION使用

需的包

<script type="text/javascript" http://www.mamicode.com/src="s"></script>
gson-1.2.3.jar谷歌JSON包用于后台转换

前台JS

JS对象

var testVo={id:"abc",name:"lvkai"}

转成JSON格式当参数传到后台

$.toJSON(testVo);

后台需要有一个对应的VO属性必需跟前台JS对象属性保持一致

String testVo=request.getParameter("testVo");
Gson gson = new Gson();
testVo T = gson.fromJson(testVo, testVo.class);

T.getId();

补充

json串转成MAP

testVo:

public String id;
public String name;
public tet tet;

set,get方法

tet:

public String id;
public String name;

//json对象 

String strJson="{‘user1‘:{‘id‘:‘1‘,‘tet‘:{‘id‘:‘3‘,‘name‘:‘lk}},‘user2‘:{‘id‘:‘2‘}}";
Map<String, testVo> userMap2 = (Map<String, testVo>)gson.fromJson(strJson, new TypeToken<HashMap<String, testVo>>(){}.getType());

//json数组

String ob=" [{‘actors‘:‘1‘,‘cutMoney‘:‘123‘,‘needQuantity‘:‘123‘,‘cartTop‘:‘0‘,‘cartBottom‘:‘0‘,‘ruleDescription‘:‘ 规则说明将显示在前台123[]{}‘}]";

Gson gson=new Gson();
List<PromoDeratingRuleVO> mapList = gson.fromJson(ob.toString(), new TypeToken<ArrayList<PromoDeratingRuleVO>>(){}.getType());

System.out.println(userMap2.get("user1").tet.getId());

js对象传到后台ACTION使用