JAvaバックグラウンドJSON接合

1982 ワード

需要:フロントエンドjsはjson文字をバックグラウンドに伝え、バックグラウンドはjsonにパラメータを再追加する必要があります.フロントエンドがパラメータバックグラウンドに与えられたらパラメータを与える必要はありません.
JSコード
	var itemname= $('#searchForm').find('#sitemname').val(),
	monitortype= $('#searchForm').find('#smonitortype').combobox('getValue')
	monitordept= $('#searchForm').find('#q_monitordept').combotree('getValue'),
	var paramArgs = {};
	if(''!=itemname){
		paramArgs['a.itemname']='like;'+itemname;
	}
	if(''!=monitortype){
		paramArgs['a.monitortype']='=;'+monitortype;
	}
		if(''!=monitordept){
		paramArgs['a.monitordept']='=;'+monitordept;
	}
	return JSON.stringify(paramArgs)

バックグラウンドjavaコード
public Pagination queryByPageMonItem(String jsonArgs,
	@RequestParam(defaultValue = "1", required = false, value = "page") int page,
	@RequestParam(defaultValue = "20", required = false, value = "rows") int rows){
		if(jsonArgs.indexOf("monitordept")==-1) {
			List list=monItemService.listMonitorDept();
			List listDeptname=new ArrayList();
			for (DeptVO deptVO : list) {
				listDeptname.add(deptVO.getDeptname());
			}
			String monitordept=StringUtil.join(listDeptname, ",");
			Map param=new HashMap();
			if(StringUtils.isNotBlank(monitordept)){
				param.put("a.monitordept","=;"+monitordept);
			}
			JSONObject fromObject = JSONObject.fromObject(param);
			JSONObject jsonObject=JSONObject.fromObject(jsonArgs);
			JSONObject jsonThree = new JSONObject();  
			jsonThree.putAll(fromObject);  
			jsonThree.putAll(jsonObject);  	
			jsonArgs=jsonThree.toString();
		}
		Pagination pagination = monItemService.listDataMonItem(jsonArgs, page, rows);
		return pagination;
	}

埋め込みプロセスを記録します.点滴がたまる.