Sejak 2.3.25, lakukan seperti ini:
<#list user as propName, propValue>
${propName} = ${propValue}
</#list>
Perhatikan bahwa ini juga berfungsi dengan kunci non-string (tidak seperti map[key], yang harus ditulis seperti map?api.get(key)itu).
Sebelum 2.3.25 solusi standarnya adalah:
<#list user?keys as prop>
${prop} = ${user[prop]}
</#list>
Namun, beberapa integrasi FreeMarker yang sangat lama menggunakan konfigurasi yang aneh, di mana Mapmetode publik (seperti getClass) muncul sebagai kunci. Itu terjadi karena mereka menggunakan murni BeansWrapper(bukan DefaultObjectWrapper) yang simpleMapWrapperpropertinya tertinggal false. Anda harus menghindari pengaturan seperti itu, karena ini mencampur metode dengan Mapentri yang sebenarnya . Tetapi jika Anda mengalami pengaturan malang tersebut, cara untuk melarikan diri situasi ini menggunakan metode Java yang terkena, seperti user.entrySet(), user.get(key), dll, dan tidak menggunakan konstruksi bahasa template seperti ?keysatau user[key].