public class FreeMarKerDto {
private String user_name;
private String new_time;
public String getUser_name() {
return user_name;
}
public void setUser_name(String user_name) {
this.user_name = user_name;
}
public String getNew_time() {
return new_time;
}
public void setNew_time(String new_time) {
this.new_time = new_time;
}
}
public class FreeMarKerMain {
/**
* 生成字符串
*/
public static String freemarkerTemplate(String content, FreeMarKerDto record) {
final String tempName = "tempName";
Object freeMarkerLock = new Object();
final String msgTemp = content;
Configuration freeMarkerConfig = null;
Map<String, Object> map = new HashMap<String, Object>(); // 存放参数
map.put("user_name", record.getUser_name());
map.put("now", record.getNew_time());
synchronized (freeMarkerLock) {
if (freeMarkerConfig == null) {
freeMarkerConfig = new Configuration();
StringTemplateLoader loader = new StringTemplateLoader();
loader.putTemplate(tempName, msgTemp);
freeMarkerConfig.setTemplateLoader(loader);
}
}
StringWriter writer = new StringWriter();
try {
freeMarkerConfig.getTemplate(tempName).process(map, writer);
} catch (Exception e) {
e.printStackTrace();
}
return writer.toString();
}
public static void main(String[] args) {
FreeMarKerDto dto = new FreeMarKerDto();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
dto.setNew_time(format.format(new Date()));
dto.setUser_name("张三");
String content = "尊敬的用户:${user_name},现在时间为:${now}";
String str = freemarkerTemplate(content,dto);
System.out.println(str);
}
}