gpt4 book ai didi

java - FreeMarker - 处理 Json,其中包括 int

转载 作者:行者123 更新时间:2023-12-01 19:42:56 24 4
gpt4 key购买 nike

我正在尝试创建一个脚本来检查 id 并导出它的名称,但我遇到了以下情况;

<小时/>

FTL 堆栈跟踪(“~”表示与嵌套相关):

- 失败于:#assign services = {"externalId": 1 [在第 1 行第 1 列的无名模板中]

<#list [services] as st><#if st.externalId == externalId>${st.name}</#if>
<#list st.children as nd<#if nd.externalId == externalId>${nd.name}</#if>
<#list nd.children as rd><#if rd.externalId == externalId>${rd.name}</#if>
<#list rd.children as th><#if th.externalId == externalId>${th.name}</#if>
<#list th.children as ths><#if ths.externalId == externalId>${ths.name}</#if>
<#list ths.children as thb><#if thb.externalId == externalId>${thb.name}</#if>
</#list></#list></#list></#list></#list></#list>`

如果所有外部ID都有数字,则脚本工作正常,但当它为空时它们也可以为空我收到错误;

<#assign services=
{
"externalId": 1,
"name": "one",
"children": [
{
"externalId": 2,
"name": "two",
"children": [
{
"externalId": null,
"name": "three",
"children": [
{
"externalId": 4,
"name": "four",
"children": [
{
"externalId": 5,
"name": "five",
"children": []
} ]
} ]
}]
}]
}>

我一直在 https://try.freemarker.apache.org/ 上进行测试

请帮忙!!

最佳答案

在 FreeMarker 中,您(几乎)总是必须在您期望的位置指定默认值 null -s 出现。喜欢:nd.externalId! == external会考虑nd.externalId作为空字符串,以防它是 null 。或者,${th.name!'null'}将打印nullth.namenull .

关于java - FreeMarker - 处理 Json,其中包括 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59156609/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com