相关文章推荐
心软的紫菜汤  ·  danse chinoise - A.i ...·  1 月前    · 
逆袭的大海  ·  Spartan - momo購物網- ...·  1 月前    · 
英俊的野马  ·  春雨MC ...·  1 月前    · 
def invokeMethod(String name, Object args) {         return "the methos is ${name}, the params is ${args}"     def methodMissing(String name, Object args){         return "the methos is ${name} is missing"

jsonstudy.groovy

package file
import groovy.json.JsonOutput
import objectorention.Person
def list = [new Person(name: 'John', age: 25),
            new Person(name: 'Major', age: 26)]
println JsonOutput.toJson(list)

输出结果:

[{"age":25,"name":"John"},{"age":26,"name":"Major"}]

也可以直接输出带格式的json字符串,将代码修改如下

def list = [new Person(name: 'John', age: 25),
            new Person(name: 'Major', age: 26)]
def json = JsonOutput.toJson(list)
println JsonOutput.prettyPrint(json)

输出结果:

"age": 25,             "name": "John"             "age": 26,             "name": "Major"

2. json转换成对象

groovy使用JsonSlurper类可以进行Json解析

def jsonSlpuer = new JsonSlurper()
jsonSlpuer.parse()

也可以使用第三方类库进行json解析,以使用Gson为例,创建以src同级的libs目录,把Gson的jar包拷贝到该目录下,右键将jar包Add as Library。
json转换成Object例子
Person.groovy

package objectorention
class Person {
    String name
    Integer age
    def increaseAge(Integer years) {
        this.name += years
    def invokeMethod(String name, Object args) {
        return "the methos is ${name}, the params is ${args}"
    def methodMissing(String name, Object args){
        return "the methos is ${name} is missing"

jsonstudy.groovy

package file
import groovy.json.JsonOutput
import groovy.json.JsonSlurper
import objectorention.Person
def list = [new Person(name: 'John', age: 25),
            new Person(name: 'Major', age: 26)]
def json = JsonOutput.toJson(list)
println JsonOutput.prettyPrint(json)
def jsonSlpuer = new JsonSlurper()
def list1 = jsonSlpuer.parseText(json)
println list1.getClass()

使用网络请求获取在线json

import groovy.json.JsonOutput
import groovy.json.JsonSlurper
import objectorention.Person
def reponse =
        getNetworkData(
                'http://baike.baidu.com/api/openapi/BaikeLemmaCardApi?scope=103&format=json&appid=379020&bk_key=%E5%85%B3%E9%94%AE%E5%AD%97&bk_length=600')
println reponse.data.head.name
def getNetworkData(String url) {
    //发送http请求
    def connection = new URL(url).openConnection()
    connection.setRequestMethod('GET')
    connection.connect()
    def response = connection.content.text
    //将json转化为实体对象
    def jsonSluper = new JsonSlurper()
    return jsonSluper.parseText(response)
                    1. 转换成json使用JsonOutput类可以直接将对象转换成Json字符串示例:Person.groovypackage objectorentionclass Person {  String name  Integer age  def increaseAge(Integer years) {    this.name += years...
				
Groovy自带了转换JSON的功能,相关类都在groovy.json包下。本文参考自Groovy文档 Parsing and producing JSON。 首先我们定义两个简单的类。 class Person { int id String name List<Book&gt...
Groovy JSON 处理Groovy 使用 JsonSlurper,JsonOutput 对象分别解析和生成JSon字符串,这一过程十分简便;生成JSON字符串groovy 使用 JsonOutput 将对象序列化为Json字符串;class JSONHandle { static void main(String[] args){ def jsonStr = Json...
1、groovy提供了对JSON解析的方法       ①JsonSlurper   JsonSlurper是一个将JSON文本或阅读器内容解析为Groovy数据的类结构,例如map,列表和原始类型,如整数,双精度,布尔和字符串。       ②JsonOutput   此方法负责将Groovy对象序列化为JSON字符串 2、解析JSON字符串 def jsonSlurp...
一、Groovy 对象转为 json 字符串 ( 使用 JsonBuilder 进行转换 )、 二、使用 JsonOutput 将指定类型对象转为 json 字符串、 三、将 json 字符串格式化输出、 四、完整代码示例、
import groovy.json.JsonOutput def jsonObject = [name: "John", age: 30, city: "New York"] def jsonString = JsonOutput.toJson(jsonObject) println jsonString // '{"name":"John","age":30,"city":"New York"}' 使用支付宝SDK报异常:java.lang.NoClassDefFoundError: Failed resolution of: Lcom/alipay/sdk/app/PayTask 15613 CSDN-Ada助手: 非常棒的博客!您的代码实现和技术思路都非常值得学习。我们鼓励您继续分享您的技术经验,不仅能够帮助其他开发者,也能不断提升自己的技术能力。如果可以的话,我们推荐您编写一篇博客,介绍如何使用Android Camera API实现自定义相机功能,这对于许多开发者来说是非常有用的技术主题。期待您的继续分享! 为了方便博主创作,提高生产力,CSDN上线了AI写作助手功能,就在创作编辑器右侧哦~(https://mp.csdn.net/edit?utm_source=blog_comment_recall )诚邀您来加入测评,到此(https://activity.csdn.net/creatActivity?id=10450&utm_source=blog_comment_recall)发布测评文章即可获得「话题勋章」,同时还有机会拿定制奖牌。 使用支付宝SDK报异常:java.lang.NoClassDefFoundError: Failed resolution of: Lcom/alipay/sdk/app/PayTask QQ_478104175: exclude 'com/alipay'请问添加到哪里 android 使用mediaplayer播放网络音乐 大海话语: 请问博主,七牛的播放器,怎么样呀? android使用API对app进行调试 ctotalk: good. C++类的引入 Deepturn: 前排支持一下,可以的话来我博客看看吧