利用freemarker生成xml

package com.mooc.freemarkerXML;

import java.io.IOException;
import java.io.StringWriter;
import java.util.HashMap;
import java.util.Map;

import freemarker.template.Configuration;

import freemarker.template.Template;
import freemarker.template.TemplateException;


public class XMLTest {

    public static Template getTemplate(String name){
        Configuration cfg = new Configuration();
        cfg.setClassForTemplateLoading(XMLTest.class, "/resources/");
        Template template = null;
        try {
            template = cfg.getTemplate(name);
        } catch (IOException e) {
            e.printStackTrace();
        }
        return template;
    }
    
    public static String process(String templatefile, Map<String, Object> param) throws IOException, TemplateException,
     Exception{
         Template template = XMLTest.getTemplate(templatefile);
         StringWriter sw = new StringWriter();
         template.process(param, sw);
         return sw.toString();
    }
    public static void main(String[] args) {
        Map<String, Object> responseMap = new HashMap<String, Object>();
        responseMap.put("id", "1");
        responseMap.put("name", "红楼梦");
        responseMap.put("author", "曹雪芹");
        responseMap.put("year", "1862");
        responseMap.put("price", "98");
        String resp = null;
        try {
            resp = XMLTest.process("book.ftl", responseMap);
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println(resp);
    }

}

book.ftl

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
    <book id="${id}">
        <name>${name}</name>
        <author>${author}</author>
        <year>${year}</year>
        <price>${price}</price>
        <address><#if address??>${address}</#if></address>
    </book>
</bookstore>

XMLSerializer read()
原文地址:https://www.cnblogs.com/james-roger/p/5438570.html