Freemarker是一款流行的Java模板引擎,提供了豐富的模板標簽,可以用于生成各種格式的文本文件,包括JSON對象。下面我們來看一下如何使用Freemarker生成JSON對象。
{ "name": "Tom", "age": 18, "gender": "male" }
首先,在Freemarker模板中定義JSON對象的結構。我們可以使用FTL標簽將內容封裝在一個JavaScript對象中:
var obj = { "name": "${user.name}", "age": ${user.age}, "gender": "${user.gender}" }
其中,${user.xxx}表示從Java數據模型中獲取指定屬性的值,并將其填充到FTL模板中。這樣,我們就可以動態地生成JSON對象了。
接下來,我們將模板文件傳遞給Freemarker引擎,并將Java數據模型中的對象傳遞給模板。例如:
// 創建Freemarker配置實例 Configuration cfg = new Configuration(Configuration.VERSION_2_3_29); cfg.setClassForTemplateLoading(getClass(), "/templates"); // 加載模板文件 Template template = cfg.getTemplate("user.ftl"); // 創建Java數據模型 MapdataModel = new HashMap<>(); User user = new User(); user.setName("Tom"); user.setAge(18); user.setGender("male"); dataModel.put("user", user); // 執行模板 Writer out = new OutputStreamWriter(System.out); template.process(dataModel, out); out.flush(); out.close();
在上述代碼中,我們首先創建了一個Freemarker配置實例,并設置模板的加載路徑。接著,我們加載了名為"user.ftl"的模板文件,并創建了Java數據模型中的對象。最后,我們將數據模型傳遞給模板文件并執行,將生成的JSON對象輸出到控制臺。
通過這樣的方式,我們就能夠輕松地使用Freemarker生成各種JSON對象了。同時,由于Freemarker支持條件判斷、循環等復雜模板標簽,我們還可以根據需要生成更加復雜的JSON結構。
上一篇mysql創建觸發器回滾
下一篇vue在線查看文件