逐层解析请求json参数字符串【我】
import net.sf.json.JSONObject;
逐层解析请求json参数字符串:
InputStream inStream =null;
BufferedReader br =null;
String reJson="";
String rtJson="";
String tranId="";
//返回报文字段
String resultCode = "1";
String resultMsg = "失败";
try {
httpRequest.setCharacterEncoding("UTF-8");
inStream = httpRequest.getInputStream();
String reqUrl= httpRequest.getRequestURI();
syslogger.info(reqUrl);
String[] method = reqUrl.split("/", 0);
Map headMap = this.getHeaderMap(httpRequest);
Map params = this.getParameterMap(httpRequest);
syslogger.info(params);
br = new BufferedReader(new InputStreamReader(inStream,"UTF-8"));
String str=br.readLine();
StringBuffer json = new StringBuffer();
while (str != null) {
try {
json.append(str);
str = br.readLine();
} catch (Exception blExc) {
System.out.println("请求参数获取出错------------str:"+str);
throw new CommonRunException(blExc.getMessage(), blExc, "");
}
}
reJson=json.toString();
syslogger.info("resultlog 请求------------"+json);
// String httpMethod = httpRequest.getMethod().toUpperCase();
System.out.println("resultlog 请求------------"+json);
//调用相关的程序逻辑
tranId=RequestUtil.getMapValue(headMap,"X-CTG-Request-Id");
if("".equals(tranId)){
tranId=RequestUtil.getMapValue(headMap,"X-CTG-Request-ID");
}
//调用实现类参数
String param = "";
try {
//逐层解析报文获取请求参数
JSONObject jsobRst1 = JSONObject.fromObject(json.toString());
syslogger.info("jsobRst1 请求------------"+jsobRst1);
String svcCont = jsobRst1.getString("svcCont");
JSONObject requestObject = JSONObject.fromObject(svcCont);
param = requestObject.get("requestObject").toString();
param = jsobRst1.toString();
} catch (Exception e) {
System.out.println("请求参数解析出错------------str:"+json);
syslogger.info("解析报文出错 请求------------"+e);
throw new Exception("解析报文出错 请求------------"+e);
}
逐层解析请求json参数字符串【我】的更多相关文章
- 小白学习Spark系列五:scala解析多级json格式字符串
一.背景 处理json格式的字符串,key值一定为String类型,但value不确定是什么类型,也可能嵌套json字符串,以下是使用 JSON.parseFull 来解析多层json. 二.实例代码 ...
- JAVA发送POST请求携带JSON格式字符串参数
import org.apache.commons.lang.StringUtils; import org.apache.http.HttpEntity; import org.apache.htt ...
- Struts2 Action接收POST请求JSON数据及其实现解析
一.认识JSON JSON是一种轻量级.基于文本.与语言无关的数据交换格式,可以用文本格式的形式来存储或表示结构化的数据. 二.POST请求与Content-Type: application/jso ...
- Spring boot中自定义Json参数解析器
转载请注明出处... 一.介绍 用过springMVC/spring boot的都清楚,在controller层接受参数,常用的都是两种接受方式,如下 /** * 请求路径 http://127.0. ...
- Android网络请求与数据解析,使用Gson和GsonFormat解析复杂Json数据
版权声明:未经博主允许不得转载 一:简介 [达叔有道]软件技术人员,时代作者,从 Android 到全栈之路,我相信你也可以!阅读他的文章,会上瘾!You and me, we are family ...
- JS中将JSON的字符串解析成JSON数据格式《转》
在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 使用eval函数来解析,并且使用jquery的ea ...
- JSON(五)——同步请求中使用JSON格式字符串进行交互(不太常见的用法)
在同步请求中使用JSON格式进行数据交互的场景并不多,同步请求是浏览器直接与服务器进行数据交互的大多是用jsp的标签jstl和el表达式对请求中的数据进行数据的渲染.我也是在一次开发中要从其它服务器提 ...
- play framework接收post请求json格式的参数
大家在用play framework框架开发第三方调用你的接口的时候并且用json格式的参数post请求 ,参数接收是个问题 ,因为play对表单提交post请求有处理: 有两种方法: 1.直接形参列 ...
- JSON字符串解析成JSON数据格式
在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 使用eval函数来解析,并且使用jquery的ea ...
随机推荐
- 《你们都是魔鬼吗》团队作业Beta冲刺---第一天
团队作业Beta冲刺 项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 你们都是魔鬼吗 作业学习目标 (1)掌握软件黑盒测试技术:(2)学会编制软件 ...
- webpack loader和插件的编写原理
webpack自定义loader和插件的api网址:https://www.webpackjs.com/api/loaders/ 点击顶部API,看左侧api: 1. 如何编写一个loader 实现的 ...
- sitemap怎么制作才适合蜘蛛抓取?
网站sitemap制作格式与要求 1.sitemap格式说明 <?xml version="1.0" encoding="utf-8"?> < ...
- Spring Boot MyBatis 通用Mapper 自动生成代码
一.在pom.xml文件中进入mybatis自动生成代码相关的jar包: 注意: <configurationFile>标签中配置的是“generatorConfig.xml”文件位置. ...
- C++template基础
函数模板 类模板 参数魔法 模板与友元
- c语言中,如果将无符号数转换为有符号数
在使用ti的adc芯片ads1259时,芯片是24为数据格式保存的,其中最高位是符号位,因此可以理解为是有符号数据,但是在嵌入式系统中,没有直接24位的变量,因此使用32的无符号先保存24位的数据. ...
- HttpMessageConverter(消息转换器 )和@responsebody使用(转)
@responsebody表示该方法的返回结果直接写入HTTP response body中 一般在异步获取数据时使用,在使用@RequestMapping后,返回值通常解析为跳转路径,加上@resp ...
- SIGAI机器学习第二十一集 AdaBoost算法2
讲授Boosting算法的原理,AdaBoost算法的基本概念,训练算法,与随机森林的比较,训练误差分析,广义加法模型,指数损失函数,训练算法的推导,弱分类器的选择,样本权重削减,实际应用. 大纲: ...
- SpringBoot第一次案例(以及jar包的生成)
一.Springboot简介 Springboot框架就用于简化Spring应用的开发,约定大于配置,去繁从简.从以往的“Spring全家桶时代”正式过渡到”Spring boot,J2EE一站式解决 ...
- YAML_07 有报错信息,告诉你错误忽略,继续执行下面的命令
ansible]# vim user5.yml --- - hosts: cache remote_user: root vars: user: bb tasks: - sh ...