当前位置: 首页 > 知识库问答 >
问题:

如何在Java中提取最后一个jsonPath值?

莫繁
2023-03-14

你好,我想问如何检索jsonPath中的最后一个值

{
    "testing": [
        {
            "transactionId": "5a99dcf84b7f633a5489805d",
            "trackingId": "555112",
            "tn": "6095555112",
            "customerName": "John",
            "customerLastName": "Chan"
        },
        {
            "transactionId": "5a99dd3f4b7f633a54898068",
            "tn": "6095555112",
            "trackingId": "555112",
            "customerName": "Amanda",
            "customerLastName": "Brown"

        }
    ]
}

我的Java代码示例行

System.out.println("response.prettyPrint() = " + response.jsonPath().getString("testing.transactionId"));

输出

response.prettyPrint() = 5a99dcf84b7f633a5489805d,5a99dcf84b7f633a5489805d

现在它正在打印所有的事务。它应该只拉最新的一个,意思是最底层的一个,其中transactionId="5a99dd3f4b7f633a54898068"

如果一个新值进来(通过后端逻辑,将添加另一组值到此)。我如何写一行,将拉最新的值集?

实例

{
    "testing": [
        {
            "transactionId": "5a99dcf84b7f633a5489805d",
            "trackingId": "555112",
            "tn": "6095555112",
            "customerName": "John",
            "customerLastName": "Chan"
        },
        {
            "transactionId": "5a99dd3f4b7f633a54898068",
            "tn": "6095555112",
            "trackingId": "555112",
            "customerName": "Amanda",
            "customerLastName": "Brown"

        },
        {
            "transactionId": "newID",
            "tn": "6095555112",
            "trackingId": "555112",
            "customerName": "Amanda",
            "customerLastName": "Brown"

        },
    ]
}

现在已经存储了一个新的数据集,我将如何编写一个java代码来拉取transactionId“NewID”?

我不想硬编码并编写类似“.transactionId[0]”[1]或[2]的内容

共有3个答案

俞新翰
2023-03-14

使用Gson api

它使Json皈依

http://tutorials.jenkov.com/java-json/gson.html#parsing-json-into-java-objects

闻安宜
2023-03-14

我希望这有帮助。我不知道确切的代码,但我知道在数组中,你可以得到最后一项,如。。。

 ARRAY.get(ARRAY.size()-1) 

我不确定如何在您的JSON数组中正确地实现它,但我希望这将使您朝着正确的方向前进。

钱峻
2023-03-14

你可以使用getList来代替getString,例如

List<String> strList = response.jsonPath().getList("testing.transactionId");

System.out.println("last value is " + strList.get(strList.size()-1))
 类似资料:
  • 如果我有一个双打数组: 我想得到第一个元素和最后一个元素,这样 我该怎么做?

  • 实际上,我用@KafkaListener来阅读一个主题中的事件,我想阅读100个事件,然后放一个线程。在一定时间内睡觉。我的问题是,当线程返回时,侦听器继续执行我读到的最后一个事件,但我想在线程睡眠时放弃这些事件,继续执行主题中的最后一个事件。 比如: 1-100-捕获 睡线 101-500 线程返回 501-601-捕获 101-500事件可以被丢弃 代码: kafka配置:

  • 问题内容: 如何获取ArrayList的最后一个值? 我不知道ArrayList的最后一个索引。 问题答案: 以下是接口的一部分(由ArrayList实现): 是元素类型。如果列表为空,则抛出。你可以在此处找到整个API文档。

  • 问题内容: 我想使用字幕API。它要求视频文件的第一个和最后一个64kb的md5哈希值。我知道如何执行md5部分,只是想知道如何获得128kb的数据。 在Python中提供了API的示例,但遗憾的是我不明白。 http://thesubdb.com/api/ 任何帮助,将不胜感激。 问题答案: 尝试这样的事情

  • 我有个问题。。。代码运行正常,但无法获取最后一行和最后一列的最后一个单元格的值。下面是代码。。。请引导 使用此代码,我动态地向JTable添加行:if(e.getSource()==addb){ 下面是从JTable行以及以后而不是系统中获取值的代码。出来println()我将向数据库发送数据。。。

  • 这是我的密码 我想获取特定记录的最后一个插入id。我试过使用雄辩的ORM。但它不起作用。 任何帮助都将不胜感激。 非常感谢。