接口传入为不同数据的不同处理
来源:互联网 发布:vue.js生命周期面试题 编辑:程序博客网 时间:2024/05/01 21:02
传入为数组时调用setParameterDataList方法
1. 第一部分@Overridepublic String uploadData(String jsonPara) throws AxisFault { util.setParameterDataList(StringUtils.analysisJsonParaList(jsonPara)); result = util.uploadData(); return StringUtils.convertToJson(result);} 2. 第2部分private List<Map<String, Object>> parameterDataList = null;public void setParameterDataList(List<Map<String, Object>> parameterDataList) { this.parameterDataList = parameterDataList;} 3. 第3部分private static Type typeTokenList = new TypeToken<List<Map<String, Object>>>() { }.getType(); 4. 第4部分 /** * 转换成list形式 * * @Title: analysisJsonParaList * @Description: TODO(这里用一句话描述这个方法的作用) * @param @param jsonPara * @param @return 参数说明 * @return List<Map<String,Object>> 返回类型 * @throws * @author summer */ public static List<Map<String, Object>> analysisJsonParaList(String jsonPara) { return gson.fromJson(jsonPara, typeTokenList); }
传入非数组数据时调用setParameterData方法
1. 第1部分@Overridepublic void setData(String jsonPara) { // TODO Auto-generated method stub util.setParameterData(StringUtils.analysisJsonPara(jsonPara));} 2. 第2部分private Map<String, Object> parameterData = null;public void setParameterData(Map<String, Object> parameterData) { this.parameterData = parameterData;} 3. 第3部分private static Type typeToken = new TypeToken<Map<String, Object>>() { }.getType(); 4. 第4部分/** * 解析参数 * * @Title: analysisJsonPara * @Description: TODO(字符串解析成map集合) * @param @param jsonPara 参数说明 * @return void 返回类型 * @throws */ public static Map<String, Object> analysisJsonPara(String jsonPara) { return gson.fromJson(jsonPara, typeToken); }
项目部分代码
Part1:四个接口
@Override public String testConnectState(String jsonPara) throws AxisFault { this.setData(jsonPara); result = util.testConnectState(); return StringUtils.convertToJson(result); } @Override public String controlProbe(String jsonPara) throws AxisFault { this.setData(jsonPara); result = util.controlProbe(); return StringUtils.convertToJson(result); } @Override public String uploadData(String jsonPara) throws AxisFault { util.setParameterDataList(StringUtils.analysisJsonParaList(jsonPara)); result = util.uploadData(); return StringUtils.convertToJson(result); } @Override public String uploadAlarmData(String jsonPara) throws AxisFault { util.setParameterDataList(StringUtils.analysisJsonParaList(jsonPara)); result = util.uploadAlarmData(); return StringUtils.convertToJson(result); }
Part2:上述四个接口的具体实现
/** * 服务器连接状态 */ public BaseJson testConnectState() { BaseJson jsonResult = (BaseJson) getObject(BaseJson.class); try { // 获取参数 // String itemId = (String) this.parameterData.get("itemId"); // 获取service对象 HistoryDataService data = (HistoryDataService) getSpringObject(HistoryDataService.class); jsonResult.setRetCode("0"); jsonResult.setRetMsg("正常连接!"); } catch (Exception e) { e.printStackTrace(); log.error(e); jsonResult.setRetMsg("连接失败!"); } return jsonResult; } /** * 探针控制接口 * * @Title: controlProbe * @Description: TODO(这里用一句话描述这个方法的作用) * @param @return 参数说明 * @return BaseJson 返回类型 * @throws * @author summer */ public BaseJson controlProbe() { BaseJson jsonResult = (BaseJson) getObject(BaseJson.class); try { // 获取参数 String code = (String) this.parameterData.get("code"); // 获取service对象 ProbeService probeService = (ProbeService) getSpringObject(ProbeService.class); // //*************业务逻辑************* start // ----------------- Map<String, Object> map = new HashMap<String, Object>(); map.put("code", code); Probe probe = probeService.findByCode(map); if (probe.getEnabled().equals("1")) { jsonResult.setRetCode("0"); jsonResult.setRetMsg("该探针程序正常启用!"); } else if (probe.getEnabled().equals("0")) { jsonResult.setRetCode("1"); jsonResult.setRetMsg("该探针程序已停止!"); } // ----------------- // //*************业务逻辑************* end } catch (Exception e) { e.printStackTrace(); log.error(e); jsonResult.setRetMsg("该探针程序已停止!"); } return jsonResult; } /** * 数据上传接口 * * @Title: uploadData * @Description: TODO(这里用一句话描述这个方法的作用) * @param @return 参数说明 * @return BaseJson 返回类型 * @throws * @author summer */ public BaseJson uploadData() { BaseJson jsonResult = (BaseJson) getObject(BaseJson.class); try { // 获取参数 List<Map<String, Object>> paramList = this.parameterDataList; // 获取service对象 HistoryDataService historyService = (HistoryDataService) getSpringObject(HistoryDataService.class); EquipmentService equipService = (EquipmentService) getSpringObject(EquipmentService.class); for (Map<String, Object> map : paramList) { String equipmentCode = (String) map.get("equipmentCode"); // 根据设备编号查找设备 Equipment equipmentTemp = equipService .searchEquipmentByIdCode(equipmentCode); String temperature = (String) map.get("temperature"); String pressure = (String) map.get("pressure"); String vacuumDegree = (String) map.get("vacuumDegree"); String dataTime = (String) map.get("dataTime"); String probeCode = (String) map.get("probeCode"); HistoryData historyData = new HistoryData(); historyData.setEquipmentId(equipmentTemp.getId()); // 用户对应设备信息 Equipment equipment = new Equipment(); equipment.setId(equipmentTemp.getId()); historyData.setEquipment(equipment); historyData.setTemperature(temperature); historyData.setPressure(pressure); historyData.setVacuumDegree(vacuumDegree); historyData.setDataTime(DateUtil.formatStr(dataTime, "yyyy-MM-dd")); historyData.setUploadTime(DateUtil.getNow()); historyData.setProbeCode(probeCode); Boolean resultBoolean = historyService.insertData(historyData); if (resultBoolean) { jsonResult.setRetCode("0"); jsonResult.setRetMsg("设备编号:" + equipmentCode + "的数据上传成功!"); } else { jsonResult.setRetCode("1"); jsonResult.setRetMsg("设备编号:" + equipmentCode + "的数据上传失败!"); } } // ----------------- // //*************业务逻辑************* end } catch (Exception e) { e.printStackTrace(); log.error(e); jsonResult.setRetMsg("失败!"); } return jsonResult; } /** * 故障报警数据上传 * * @Title: uploadAlarmData * @Description: TODO(这里用一句话描述这个方法的作用) * @param @return 参数说明 * @return BaseJson 返回类型 * @throws * @author summer */ public BaseJson uploadAlarmData() { BaseJson jsonResult = (BaseJson) getObject(BaseJson.class); try { // 获取参数 List<Map<String, Object>> paramList = this.parameterDataList; // 获取service对象 AlertSettingService alermSettingService = (AlertSettingService) getSpringObject(AlertSettingService.class); EquipmentService equipService = (EquipmentService) getSpringObject(EquipmentService.class); for (Map<String, Object> map : paramList) { String equipmentCode = (String) map.get("equipmentCode"); // 根据设备编号查找设备 Equipment equipmentTemp = equipService .searchEquipmentByIdCode(equipmentCode); String alertType = (String) map.get("alertType"); String alarmPara = (String) map.get("alarmPara"); String alarmParaVal = (String) map.get("alarmParaVal"); AlertSetting alertSettingData = new AlertSetting(); alertSettingData.setEquipmentId(equipmentTemp.getId()); alertSettingData.setAlertType(alertType); alertSettingData.setAlarmPara(alarmPara); alertSettingData.setAlarmParaVal(alarmParaVal); Boolean resultBoolean = alermSettingService .insertData(alertSettingData); if (resultBoolean) { jsonResult.setRetCode("0"); jsonResult.setRetMsg("设备编号:" + equipmentCode + "的故障报警数据上传成功!"); } else { jsonResult.setRetMsg("设备编号:" + equipmentCode + "的故障报警数据上传失败!"); } } // ----------------- // //*************业务逻辑************* end } catch (Exception e) { e.printStackTrace(); log.error(e); jsonResult.setRetMsg("失败!"); } return jsonResult; } private Map<String, Object> parameterData = null; public void setParameterData(Map<String, Object> parameterData) { this.parameterData = parameterData; } private List<Map<String, Object>> parameterDataList = null; public void setParameterDataList(List<Map<String, Object>> parameterDataList) { this.parameterDataList = parameterDataList; }
0 0
- 接口传入为不同数据的不同处理
- Jmeter使用_time函数实现同一个接口参数传入可以每次传入不同的参数
- 程序对数据的不同处理。
- 同一按钮实现不同事件,即可传入不同参数实现不同处理事件
- 如何通过一个方法来传入并处理不同泛型类型的集合
- 关于传入不同参数请求同一Ajax后返回数据显示错乱的问题
- 一个类继承不同接口存在相同方法的处理
- 数据接口-数据库数据,通过接口文件调用数据到不同的平台
- WCF处理不同方式提交的数据的方法
- linq中数据转换为不同的类型
- 多种不同条件的数据统计显示为一条记录
- 不同数据库表插入字段类型为LONG的数据
- 为同一个ejs模板绑定不同的数据
- 选择接口的不同实现
- 网络传输层不同数据大小的处理
- java中数据库访问方式的不同处理数据总结:
- spark streaming 同时处理两个不同kafka集群的数据
- python接口测试:post传入参数为base64的加密数据
- 关于shell的一些命令
- Java Reflection(九):泛型
- ThinkPHP里的命名空间解析
- ORACLE基础(五)------ 视图
- Codeforces 149C Division Into Teams 构造
- 接口传入为不同数据的不同处理
- web测试方法总结
- UITextField的创建与方法的重写
- 输出形如aabb的4位完全平方数(7744问题)
- spring session无法实现共享(多web应用)
- tensorboard
- Java Reflection(十):数组
- 以域管理账户连接到TFS或git时,设置IE允许Cookies
- Linux修改/etc/profile配置错误command is not found自救方法