【Groovy】json 序列化 ( JsonBuilder 生成器 | 生成带根节点名称的 json 字符串 | 生成不带根节点名称的 json 字符串 )

简介: 【Groovy】json 序列化 ( JsonBuilder 生成器 | 生成带根节点名称的 json 字符串 | 生成不带根节点名称的 json 字符串 )

一、json 生成器


首先 , 创建 json 生成器 。


// json 生成器
def jsonBuilder = new JsonBuilder()



然后 , 如果生成一个带根节点名称的 json 字符串 ,需要使用 jsonBuilder.根节点名称 = {闭包} 格式的代码 , 生成 json 字符串 ;


// 生成 {"student":{"name":"Tom","age":18}}
// 其中 .student 表示的是根节点的名称 , 这不是一个方法名
jsonBuilder.student{
    name "Tom"
    age 18
}


上述代码生成的 json 字符串为


{"student":{"name":"Tom","age":18}}



最后 , 如果想要生成


{"name":"Tom","age":18}


样式的字符串 , 则使用


// 生成 {"name":"Tom","age":18}
jsonBuilder{
    name "Tom"
    age 18
}


代码即可 , 去掉 .根节点名称 , 直接使用 jsonBuilder{ 闭包 } 生成 json 字符串 ;


二、代码示例


json 生成器代码示例 :


import groovy.json.JsonBuilder
// json 生成器
def jsonBuilder = new JsonBuilder()
// 生成 {"student":{"name":"Tom","age":18}}
// 其中 .student 表示的是根节点的名称 , 这不是一个方法名
jsonBuilder.student{
    name "Tom"
    age 18
}
println jsonBuilder
// 生成 {"name":"Tom","age":18}
jsonBuilder{
    name "Tom"
    age 18
}
println jsonBuilder


执行结果 :


{"student":{"name":"Tom","age":18}}
{"name":"Tom","age":18}


image.png

image.png

目录
相关文章
|
12天前
|
人工智能 JSON 搜索推荐
猫步简历 - 开源免费AI简历生成器 | 一键导出PDF/JSON
猫步简历是一款免费开源的AI简历生成器,帮助用户轻松创建独特、专业的简历。支持导出超高清PDF、图片、JSON等多种格式,并提供AI智能创作、润色和多语种切换等功能。拥有海量模板、高度定制化模块及完善的后台管理系统,助力求职者脱颖而出。官网:https://maobucv.com,GitHub开源地址:https://github.com/Hacker233/resume-design。
123 10
|
3月前
|
JSON JavaScript 前端开发
Go语言中json序列化的一个小坑,建议多留意一下
在Go语言开发中,JSON因其简洁和广泛的兼容性而常用于数据交换,但其在处理数字类型时存在精度问题。本文探讨了JSON序列化的一些局限性,并介绍了两种替代方案:Go特有的gob二进制协议,以及msgpack,两者都能有效解决类型保持和性能优化的问题。
88 7
|
3月前
|
JSON 前端开发 JavaScript
聊聊 Go 语言中的 JSON 序列化与 js 前端交互类型失真问题
在Web开发中,后端与前端的数据交换常使用JSON格式,但JavaScript的数字类型仅能安全处理-2^53到2^53间的整数,超出此范围会导致精度丢失。本文通过Go语言的`encoding/json`包,介绍如何通过将大整数以字符串形式序列化和反序列化,有效解决这一问题,确保前后端数据交换的准确性。
84 4
|
3月前
|
JSON JavaScript Java
对比JSON和Hessian2的序列化格式
通过以上对比分析,希望能够帮助开发者在不同场景下选择最适合的序列化格式,提高系统的整体性能和可维护性。
122 3
|
3月前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
3月前
|
JSON JavaScript 前端开发
|
4月前
|
JSON 前端开发 JavaScript
json字符串如何转为list对象?
json字符串如何转为list对象?
629 7
|
5月前
|
JSON 数据格式 Python
6-1|Python如何将json转化为字符串写到文件内 还保留json格式
6-1|Python如何将json转化为字符串写到文件内 还保留json格式
|
5月前
|
JSON 数据格式
序列化 json和pickle
序列化 json和pickle
|
7天前
|
数据采集 JSON 测试技术
如何在Python中高效实现CSV到JSON的数据转换
在实际项目中,数据格式转换是常见问题,尤其从CSV到JSON的转换。本文深入探讨了多种转换方法,涵盖Python基础实现、数据预处理、错误处理、性能优化及调试验证技巧。通过分块处理、并行处理等手段提升大文件转换效率,并介绍如何封装为命令行工具或Web API,实现自动化批量处理。关键点包括基础实现、数据清洗、异常捕获、性能优化和单元测试,确保转换流程稳定高效。
122 83