freemarker使用map替换字符串中的值demo2
package demo01; import java.io.IOException; import java.io.OutputStreamWriter; import java.io.StringWriter; import java.util.HashMap; import java.util.Map; import freemarker.cache.StringTemplateLoader; import freemarker.template.Configuration; import freemarker.template.Template; public class Test02 { public static void main(String[] args) { Configuration cfg = new Configuration(); StringTemplateLoader loader = new StringTemplateLoader(); cfg.setTemplateLoader(loader); cfg.setClassicCompatible(true); String templateSource = "name:${user};URL:${url};uname:${name}"; loader.putTemplate("crd", templateSource); Map<String, String> map = new HashMap<String, String>(); map.put("user", "crd"); map.put("url", "www.baidu.com"); map.put("name", "baidu"); try { Template template = cfg.getTemplate("crd"); StringWriter writer = new StringWriter(); template.process(map, writer); System.out.println(writer.toString()); template.process(map, new OutputStreamWriter(System.out)); } catch (Exception e) { e.printStackTrace(); } } }
后台打印:
name:crd;URL:www.baidu.com;uname:baidu
name:crd;URL:www.baidu.com;uname:baidu