色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

freemarker json 取值

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

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

Name: ${jsonData.name}

Age: ${jsonData.age}

Gender: ${jsonData.gender}

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

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

<#-- json數(shù)據(jù) --><#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屬性值。

除了直接使用${}語法取值外,F(xiàn)reemarker還支持通過傳遞參數(shù)來動態(tài)獲取JSON屬性值,例如:

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

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

<#-- 調(diào)用macro --><@showInfo "name"/><@showInfo "age"/><@showInfo "gender"/>

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