在Java Web開發中,Freemarker是非常重要的一個模板引擎。通過使用Freemarker,我們可以將后端的數據與前端HTML代碼進行分離,這樣有助于提高代碼的可維護性和可重用性。而在Freemarker中,和JSON數據打交道也是很常見的操作,我們可以將后端的Java對象轉換為JSON格式,然后在前端通過AJAX請求獲得數據并進行頁面渲染。
//Java代碼示例<#assign data = { "name": "Tom", "age": 18, "country": "China" }><#-- 將Java對象轉換成JSON格式字符串 --><#assign jsonData = data?json_string>
在上面的Java代碼中,我們首先定義了一個Java對象data,然后通過Freemarker內置的json_string函數將其轉換為JSON格式的字符串。這個字符串可以發送給前端,讓前端進行數據渲染。在前端使用AJAX請求獲得數據后,可以使用JSON.parse()函數將字符串轉換為JSON對象。
//前端JavaScript代碼示例 $.ajax({ url: '/getData', type: 'GET', success: function(data) { var jsonData = JSON.parse(data); //將字符串轉換為JSON對象 //根據數據渲染頁面 }, error: function() { alert('請求數據失敗'); } });
在上面的JavaScript代碼中,我們使用了jQuery庫的$.ajax()函數向后端發起GET請求,獲得數據后使用JSON.parse()函數將字符串轉換為JSON對象,并根據數據進行頁面渲染。通過這種方式,我們可以將后端的數據與前端的頁面進行分離,提高了代碼的可維護性和可重用性。