java如何获取request中json数据

 更新时间:2023年08月24日 09:16:03   作者:王家五哥  
这篇文章主要给大家介绍了关于java如何获取request中json数据的相关资料,文中通过代码示例以及图文将获取的方法介绍的非常详细,对大家学习或者使用java具有一定的参考借鉴价值,需要的朋友可以参考下

功能简介:

Java 从 HttpServletRequest 中获取前端传输过来的json数据

效果展示:

请求示例:

post: 127.0.0.1:8081/getRequestJson

{"messageHistory",[{"message":"123","time":"2023-03-22 10:00:00"}],"isContextChat":true}

代码示例:

@RequestMapping(value = "getRequestJson", method = RequestMethod.POST)
@ResponseBody
public String getRequestJson(HttpServletRequest request) throws IOException {
    StringBuilder buffer = new StringBuilder();
    BufferedReader reader = request.getReader();
    String line;
    while ((line = reader.readLine()) != null) {
        buffer.append(line);
    }
    String requestBody = buffer.toString();
    System.out.println("--------> get request json is :" + requestBody);
	return requestBody;
}

拓展:

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
@RequestMapping(value = "getRequestJson", method = RequestMethod.POST)
@ResponseBody
public String getRequestJson(HttpServletRequest request) throws IOException {
	// 1. 从HttpServletRequest对象中获取输入流,并读取请求正文。
	StringBuilder buffer = new StringBuilder();
	BufferedReader reader = request.getReader();
	String line;
	while ((line = reader.readLine()) != null) {
		buffer.append(line);
	}
	String requestBody = buffer.toString();
	// 2. 使用JSON库(如Jackson、Gson等)将字符串解析为JsonNode或任何其他适合你的数据结构。
	ObjectMapper mapper = new ObjectMapper(); // Jackson JSON库示例
	JsonNode jsonNode = mapper.readTree(requestBody); // 解析为JsonNode对象
	// 3. 现在,你可以使用jsonNode对象来访问和操作JSON数据了。
	String name = jsonNode.get("name").asText();
	int age = jsonNode.get("age").asInt();
	// 遍历所有属性并打印它们的值:
	Iterator<String> fieldNamesIter= jsonNode.fieldNames();
	while (fieldNamesIter.hasNext()){
		String fieldName=fieldNamesIter.next();
		JsonNode fieldValue=jsonNode.get(fieldName);
		System.out.println(fieldName+": "+fieldValue.asText());
	}
	System.out.println("--------> get request json is :" + requestBody);
	return requestBody;
}

总结

到此这篇关于java如何获取request中json数据的文章就介绍到这了,更多相关java获取request json数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 浅谈Java编程中的synthetic关键字

    浅谈Java编程中的synthetic关键字

    这篇文章主要介绍了浅谈Java编程中的synthetic关键字的相关内容,包括其简单的介绍和实例,需要的朋友可以了解下。
    2017-09-09
  • Java进阶必备之多线程编程

    Java进阶必备之多线程编程

    今天带大家来学习java多线程编程,文中有非常详细的代码示例及介绍,对正在学习java多线程的小伙伴们很有帮助,需要的朋友可以参考下
    2021-05-05
  • Java运行时环境之ClassLoader类加载机制详解

    Java运行时环境之ClassLoader类加载机制详解

    这篇文章主要给大家介绍了关于Java运行时环境之ClassLoader类加载机制的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • maven中更改jdk版本的方法实现

    maven中更改jdk版本的方法实现

    本文主要介绍了maven中更改jdk版本的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-07-07
  • Java实现添加条码或二维码到Word文档

    Java实现添加条码或二维码到Word文档

    这篇文章主要介绍了如何在Word文档中添加条码、二维码。可在文档正文段落中添加,也可在页眉页脚中添加,感兴趣的小伙伴快跟随小编一起学习一下吧
    2022-05-05
  • Mybatis实战教程之入门到精通(经典)

    Mybatis实战教程之入门到精通(经典)

    MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架,通过本文给大家介绍Mybatis实战教程之入门到精通,对mybatis实战教程相关知识感兴趣的朋友一起学习吧
    2016-01-01
  • 使用SpringBoot_jar方式启动并配置日志文件

    使用SpringBoot_jar方式启动并配置日志文件

    这篇文章主要介绍了使用SpringBoot_jar方式启动并配置日志文件操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • 关于@JsonProperty,@NotNull,@JsonIgnore的具体使用

    关于@JsonProperty,@NotNull,@JsonIgnore的具体使用

    这篇文章主要介绍了关于@JsonProperty,@NotNull,@JsonIgnore的具体使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • Java实现猜数字小游戏

    Java实现猜数字小游戏

    大家好,本篇文章主要讲的是Java实现猜数字小游戏,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • IDEA SSM整合Redis项目实例 附源码

    IDEA SSM整合Redis项目实例 附源码

    今天给大家普及IDEA SSM整合Redis项目实例,包括pom.xml 配置和spring-redis.xml 配置代码,代码也很简单,通过项目实际案例能更好的帮助大家理解,需要的朋友可以参考下
    2021-06-06

最新评论