java web 服务器端处理json格式参数

前面我们说了传递参数的两种访书,第一是key-value形式,第二是json格式,
对于第一种我们在服务器端直接使用 request.getParameter("key");就能获取key对应的value。但是对于传递的json就不能使用这样的代码了,
利用json传递的参数存在request的body里,我们需要从里面输入流里面读取,下面是代码:

 1 /**
 2 * 获取请求的 body
 3 * @param req
 4 * @return
 5 * @throws IOException
 6 */
 7 public static String getRequestBody(HttpServletRequest req) throws IOException {
 8   BufferedReader reader = req.getReader();
 9   String input = null;
10   StringBuffer requestBody = new StringBuffer();
11   while((input = reader.readLine()) != null) {
12     requestBody.append(input);
13   }
14   return requestBody.toString();
15 }

StringBuffer requestBody = new StringBuffer();这句要注意一下,有的会使用String来定义requestBody,这样会有一个坏处,
每次reader.readLine()不为空的时候,requestBody += input;就会新创建一个String对象,而StringBuffer是可以追加的

时间: 2024-10-05 09:24:31

java web 服务器端处理json格式参数的相关文章

nginx高性能java web应用几个重要参数

互联网上讲述nginx高并发配置的比较多,主要是nginx+php.本博讲述nginx java web应用配置,实现高并发.配置关键点,见下文 配置cpu核数 worker_processes 10; worker_rlimit_nofile 102400; 配置epoll网络模型 worker_connections线程数,开到上万 events { use epoll; worker_connections 10240; } 图片资源cache http{ log_format main

Web API删除JSON格式的文件记录

Insus.NET的系列Web Api学习文章,这篇算是计划中最后一篇了,删除JSON格式的文件记录.前一篇<Web Api其中的PUT功能演示>http://www.cnblogs.com/insus/p/4346982.html中学习了怎样更新数据.程序开发涉及到数据的,为了让用户方便管理,一般提供了查询,添加,更新以及删除功能.本篇中是针对文件中的数据进行删除. 下面Insus.NET就对此进行详尽演示.Web Api的一个type: "DELETE".在API控制中

Java使用jackson操作Json格式数据

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,她是 JavaScript原生态的数据格式. 她独立于任何编程语言.可读性高.易于生成和解析.体积轻量,这些优雅的特性,让JSON成为非常理想的数据交换的语言. 原文地址: http://www.hpboys.com/616.html 在使用Java操作JSON时,我们用到了Jackson框架. Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json.xml转换成Ja

java之后台返回json格式字符串,前台接受并转为json文件

作为一个菜鸟,做项目真的好困难呀,这两天被一个问题困了两天,终于解决了,但是也不算太完美.首先,先说一下问题吧,根据后台返回的值,前台接受并作出一个折线图. 最初,在后台根据从数据库中的值,强制拼成了json格式的字符串,利用model返回给前台,前台Ajax  success:function(data)data接收数据,这是应该接收的是字符串,由于折线图中series中的data为非字符串,(这个是后来百度才知道的),就没有成功.然后就想后台直接将数据转换成json,然后返回前台,利用里JS

java请求POST发送json格式请求

public static String upload(String url){ try { HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost(url); MultipartEntity reqEntity = new MultipartEntity(); ArrayList<HashMap<String,String>> enclosureList = new Arr

java使用HttpClient传输json格式的参数

最近的一个接口项目,传的参数要求是json,需要特殊处理一下. 重点是这两句话: httpPost.setHeader("Content-Type", "application/json;charset=UTF-8");se.setContentType(CONTENT_TYPE_TEXT_JSON);这两句话的作用与jmeter的设置header信息类似 package com.base; import java.io.UnsupportedEncodingExc

.Net MVC 4 Web Api 输出Json 格式

1.Global 中增加json输出 GlobalConfiguration.Configuration.Formatters.JsonFormatter.MediaTypeMappings.Add(new QueryStringMapping("json", "true", "application/json")); protected void Application_Start() { AreaRegistration.RegisterAl

Winform Post请求传递Json格式参数的写法

注意的是,Json传递需用到Hashtable(哈希表)来添加参数,本人也试过用JObject添加页不行,感觉应该可以的不知道怎么回事,直接上代码, Hashtable ht = new Hashtable(); ht.Add("agentCode", agentcode); ht.Add("agentPassword", agentpwd); ht.Add("body", body); HttpRequest.DoPost(registerUr

app开发历程————服务器端生成JSON格式数据,采用Unicode编码,隐藏中文

今天,问以前的同事,他们写接口按什么编码,怎么看到有\u的一些看不懂的内容,一问,原来是信息隐藏,防止信息泄漏. 然后在网上查了Java如何把中文转换成unicode编码,转自:http://blog.csdn.net/sunmenggmail/article/details/27539023 1 package mobi.chenwei.wing.util; 2 3 public class CharacterSetToolkit { 4 5 /** 6 * @param args 7 */