java获取request里面的json

本文介绍了一种在Java Web应用中解析HTTP请求中的JSON数据的方法,包括从GET和POST请求中读取JSON字符串,并将其转换为可操作的JSON对象。通过自定义工具类,可以轻松地在控制器中获取并解析JSON数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

加上工具类的代码:
public static byte[] getRequestPostBytes(HttpServletRequest request)
throws IOException {
int contentLength = request.getContentLength();
if(contentLength<0){
return null;
}
byte buffer[] = new byte[contentLength];
for (int i = 0; i < contentLength;) {

        int readlen = request.getInputStream().read(buffer, i,
                contentLength - i);
        if (readlen == -1) {
            break;
        }
        i += readlen;
    }
    return buffer;
}


public static String getRequestPostStr(HttpServletRequest request)
        throws IOException {
    byte buffer[] = getRequestPostBytes(request);
    String charEncoding = request.getCharacterEncoding();
    if (charEncoding == null) {
        charEncoding = "UTF-8";
    }
    return new String(buffer, charEncoding);
}

 public static String getRequestJsonString(HttpServletRequest request)
            throws IOException {
        String submitMehtod = request.getMethod();
        // GET
        if (submitMehtod.equals("GET")) {
            return new String(request.getQueryString().getBytes("iso-8859-1"),"utf-8").replaceAll("%22", "\"");
        // POST
        } else {
            return getRequestPostStr(request);
        }
    }

三个方法。

在controller里面用
String json = getRequestJsonString(request);
System.out.println(json);
获取json数据把string变成json数据
JSONObject json_test = JSONObject.fromObject(json);
System.out.println(json_test.get(“producerid”));

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值