欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

freemarker json 取值

錢衛國2年前8瀏覽0評論

Freemarker是一種基于模板引擎的Java框架,可以非常方便地從JSON中取值并渲染到模板中,以下是一個基本的實現示例:

<#-- json數據 --><#assign jsonData={"name": "Tom", "age": 20, "gender": "male"}><#-- freemarker模板 -->

Name: ${jsonData.name}

Age: ${jsonData.age}

Gender: ${jsonData.gender}

以上代碼中,我們首先定義了一個名為jsonData的變量,值為一個JSON對象。接著在模板中使用${}語法即可直接獲取JSON對象中的屬性值,非常方便。

如果JSON中有多層嵌套結構,也是可以輕松取值的,只需要使用"."語法來遞歸獲取即可,例如:

<#-- json數據 --><#assign jsonData={"person": {"name": "Tom", "age": 20, "gender": "male"}}><#-- freemarker模板 -->

Name: ${jsonData.person.name}

Age: ${jsonData.person.age}

Gender: ${jsonData.person.gender}

以上代碼中,我們在JSON中增加了一層person對象,模板中只需要使用jsonData.person.name這樣的語法即可獲取到其中的name屬性值,同理可以獲取到age和gender屬性值。

除了直接使用${}語法取值外,Freemarker還支持通過傳遞參數來動態獲取JSON屬性值,例如:

<#-- json數據 --><#assign jsonData={"name": "Tom", "age": 20, "gender": "male"}><#-- freemarker模板 --><#macro showInfo field>

${field}: ${jsonData[field]}

<#-- 調用macro --><@showInfo "name"/><@showInfo "age"/><@showInfo "gender"/>

以上代碼中,我們定義了一個名為showInfo的宏,它接受一個名為field的參數,然后使用${}語法獲取jsonData中該參數對應的屬性值。在調用宏時,可以傳遞不同的參數來動態顯示JSON屬性值。