jackson库收发json格式数据和ajax发送json格式的数据

news2025/2/12 11:22:46

一、jackson库收发json格式数据

  jackson库是maven仓库中用来实现组织json数据功能的库。

  1. json格式
     json格式一个组织数据的字符文本格式,它用键值对的方式存贮数据,json数据都是有一对对键值对组成的,键只能是字符串,用双引号包括;值可以是字符串,数字,布尔表达式,数组等,键值对之间用逗号隔开,一个大括号包括所有的键值对就组成了一个完整的json数据,也可以一个中括号包裹多个大括号,就代表一个json格式数据的数组。

    {
    	"name"="王昭君",
    	"task"="出塞",
    	"age"=15
    }
    
  2. ObjectMapper类
     ObjectMapper类就是jackson库中可以用来组织json数据的类,它用两个方法,一个方法(readValue)将json数据实例化成一个类,一个方法(writeValue)将一个类转换成json数据。

    • readValue方法
       这个方法需要传入两个参数,一个http请求req的inputStream或者req的reader(使用reader要确保发过来的http请求中设置了charset键值对),还有一个就是定义好的对应json格式的类.class;
    1. readValue会读取http请求的json格式块
    2. 将读取到的json格式块转换成类似Map的数据结构
    3. 用json中的键值在传入的类的class中寻找同名的类属性,找到后就将对应值赋值给这个属性。如果json数据中有键值没有在类中找到同名的属性,服务器回直接返回一个500状态码的出错页面,如果类中有json数据中没有的属性,这个属性被赋值为null
    4. 赋值完后就实例化出了一个对象,这个对象的所有属性值一一对应json格式的键值对。
      在这里插入图片描述
    • writeValue方法
      writeValue也有两个参数,一个是resp的getWriter或者getOutPutStream,(使用Writer时需要在使用之前先设置resp的header的charset,避免使用了错误的字符集),另一个是之前以及实例化好了的类对象或者类对象数组。
      writeValue会将每个传入的对象根据属性名:属性值的方式构造成json格式数据,一个对象对应一个json对象,传入对象数组就会构造多个json数据对象,每个json对象用大括号包裹,用逗号分割,再用一个中括号将所有大括号包裹起来。
      在这里插入图片描述

二、使用ajax发送body为json格式的http请求

ajax是js的jquery库中的一个构造http请求的方法,其中ajax也是通过键值对来构造http请求的,ajax的参数就是一个js对象,这个对象中必须要有和http数据包的各种键值对,url表示网址,type或者method表示方法,data表示body部分。
所以data的值必须是一个json格式的变量。

  • js的对象和json格式非常像,js的键默认就是字符串形式,所以为了构造一个json格式的body,首先就要将body中的键值对构造成一个js对象。
  • 构造好对象之后,使用js的JSON的stringify方法,传入上面构造的js对象,stringify方法就会返回一个json格式的数据。
  • 将这个数据作为data的值即可
    在这里插入图片描述
    至于为什么不用body作为构造http请求body部分的键值?这是因为ajax还有个获取发送的http请求的http响应的功能,也就是success键值对,这个success的值是一个函数,这个函数的传入的参数body就是返回的响应的body。如果返回响应的body有多个json对象,success函数的参数body就是一个数组。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/864281.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python爬虫——爬虫伪装和反“反爬”

前言 爬虫伪装和反“反爬”是在爬虫领域中非常重要的话题。伪装可以让你的爬虫看起来更像普通的浏览器或者应用程序,从而减少被服务器封禁的风险;反“反爬”则是应对服务器加强的反爬虫机制。下面将详细介绍一些常见的伪装和反反爬技巧,并提…

ATF(TF-A)安全通告 TFV-9 (CVE-2022-23960)

ATF(TF-A)安全通告汇总 目录 一、ATF(TF-A)安全通告 TFV-9 (CVE-2022-23960) 二、CVE-2022-23960 一、ATF(TF-A)安全通告 TFV-9 (CVE-2022-23960) Title TF-A披露通过分支预测目标重用(branch prediction target reuse)引发的前瞻执行处理器漏洞 CV…

2000-2022年全国各地级市绿色金融指数数据

2000-2022年全国各地级市绿色金融指数数据 1、时间:2000-2022年 2、来源:来源:统计局、科技部、中国人民银行等权威机构网站及各种权威统计年鉴,包括全国及各省市统计年鉴、环境状况公报及一些专业统计年鉴,如 《中国…

工厂老化设备维护的重要性及如何维护老化设备?

工业领域的老化设备问题日益凸显,对于保持生产稳定和效率至关重要。本文将探讨工厂老化设备维护的重要性,并介绍如何通过PreMaint设备数字化平台实现对老化设备的高效维护,从而确保工厂持续高效运转。 一、工厂老化设备的重要性 随着时间的推…

Flutter实现倒计时功能,秒数转时分秒,然后倒计时

Flutter实现倒计时功能 发布时间:2023/05/12 本文实例为大家分享了Flutter实现倒计时功能的具体代码,供大家参考,具体内容如下 有一个需求,需要在页面进行显示倒计时,倒计时结束后,做相应的逻辑处理。 实…

【Spring专题】Bean的声明周期流程图

前言 我向来不主张【通过源码】理解业务,因为每个人的能力有限,甚至可能会因为阅读错误导致出现理解上的偏差,所以我决定,还是先帮大家【开天眼】,先整体看看流程图,好知道,Spring在写源码的过…

山东Certum公网IP证书申请

Certum作为欧洲第一个通过WebTrust的CA认证机构,一直致力于为用户提供高质量的数字证书服务。WebTrust是一种全球认可的数字证书认证标准,它确保了数字证书颁发机构的操作符合严格的标准和程序。Certum通过WebTrust的认证,证明了其数字证书服…

Practices9(双指针)|283. 移动零、11. 盛最多水的容器、15. 三数之和

283. 移动零 1.题目: 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums [0,1,0,3,12] 输出: [1,3,12,0,…

豪越HYDO智能运维助力智慧医院信息化建设

随着国家政策的推动与支持,医疗行业信息化应用不断普及,大数据、AI、医疗物联网等技术的应用,快速推动了电子病历、智慧服务、智慧管理的智慧医院建设和医院信息标准化建设,通过不断探索创新“智慧医院”服务模式,实现…

中国首份仿生机器人产业全景报告发布!大模型带来加速度,三大指标决定竞争格局

AGI火热发展,让仿生机器人的实现补全了最后一块重要拼图。 一直以来,仿生机器人都代表人类对于科技的一种终极想象,备受产业圈热捧。 马斯克、雷军等,纷纷押注这一赛道。特斯拉全尺寸仿生机器人Optimus、小米全尺寸通用人形机器…

资深测试员才知道的五个行业秘密

作为一名资深测试员,总有一些平时难以诉说的行业秘密,我也不例外。也许这些秘密你认可,也许你嗤之以鼻,但不管如何,我都希望能给你带来一丝感悟,更深的认识测试,并走得更远。 1、手工测试不可替…

【Linux】网络基础2

文章目录 网络基础21. 应用层1.1 协议1.2 HTTP 协议1.2.1 URL1.2.2 urlencode和urldecode1.2.3 HTTP协议格式1.2.4 HTTP的方法1.2.5 HTTP的状态码1.2.6 HTTP 常见的header1.2.7 最简单的HTTP服务器 2. 传输层2.1 端口号2.1.1 端口号范围划分2.1.2 认识知名端口号2.1.3 netstat2…

RFID技术应用于服饰市场

RFID技术应用于服饰市场 RFID技术已广泛应用于服饰制造加工行业,为企业提供了许多实用的解决方案。下面是一些常见的应用场景: 库存管理:RFID标签可以被缝制或附着在服装上,通过RFID读写器进行扫描。企业可以实时跟踪和管理库存…

配置中心替换测试设计分享

一、背景 项目后端服务开始一直使用Apollo配置中心(携程开发)进行配置管理,由于公司自研了配置中心B,为了后续方便管理和降本增效,后端服务使用的配置需要由Apollo配置中心切换到自研配置中心B。后续不再使用Apollo配置。 替换前架构&#x…

Photoshop神器插件Alpaca安装与使用指南

Alpaca是一款Photoshop的插件,它可以自动生成各种图片,大大提高我们的工作效率。今天就为大家介绍如何安装和使用Alpaca这个好用的插件。 一、下载并安装Alpaca 在Chrome浏览器中打开Alpaca的官网,点击join alpaca beta 注册帐号。 下载完成后,解压安装包,运行里面的Alpaca …

米尔核心板纯国产入门级性价比优选T113

近些年,国产MPU弯道超车越来越给力,芯片国产化,不再纯依赖进口,产品平台选型自主可控,未来国产化的主芯片平台产品将进一步蓬勃发展。为满足客户对入门级、低成本、高性能的国产需求,米尔电子推出国产入门级…

28 | Boss直聘数据分析

针对boss直聘网的招聘信息,然后分析互联网发展排名前十的城市在互联网方面职位的薪水,学历要求,经验要求,等等信息。 准备从以下几个方面进行分析: (1)各个城市的平均工资 (2)各个学历的平均工资 (3)各个岗位的平均工资 (4)不同工作经验要求的工资 (5)各个经验…

通讯录(静态版)

通讯录(静态版) 通讯录无非就是实现以下功能: 1.前言 首先要知道一个人要包含哪些信息,这里就以(姓名,年龄,性别,电话号码,地址)为例,这些信息…

ssh-keygen 做好免密登录后不生效

免密说明 通常情况下,我们ssh到其他服务器需要知道服务器的用户名和密码。对于需要经常登录的服务器每次都输入密码比较麻烦,因此我们可以在两台服务器上做免密登录,即在A服务器可以免密登录B服务器。 在A服务器上登录B服务器时,…

29 | 广州美食店铺数据分析

广州美食店铺数据分析 一、数据分析项目MVP加/价值主张宣言 随着经济的快速发展以及新媒体的兴起,美食攻略、美食探店等一系列东西进入大众的眼球,而人们也会在各大平台中查找美食推荐,因此本项目做的美食店铺数据分析也是带有可行性的。首先通过对广东省的各市美食店铺数量…