`

velocity实现邮件模板定制

阅读更多

近日,因项目需要,需要实现邮件定制功能。

以前接触过velocity,freemarker,不过都是很久以前的事了。

今日记录下来,作为备份,以免忘记。

在网上有很多不错的文章,用于直接使用spring+velocity实现邮件定制发送的功能。

例如:gundumw100的

spring+velocity+javamail发送模板邮件

XIXITIE的

 
由于以前系统实现了邮件发送功能,我这里只提供邮件模板的定制功能。
本人的想法:在数据库保存模板内容,将模板文件保存至本地。 获取内容时读取本地模板文件内容。
我采取的是Velocity模板引擎,用户创建模板时还需遵守它的规则。比如说${username} 类型${} 的作为参数。在后台我使用正则,分别识别参数。
String fileContent = "${username}你好,您的邮箱是${email}";
		Pattern pattern = Pattern.compile("\\$\\{(.*?)\\}");
		Matcher m = pattern.matcher(fileContent);
		List<String> keys = new ArrayList<String>();
		while (m.find()) {
			keys.add(m.group(1));
		}
 当然fileContent是从vm模板文件里面取出来的内容。
由于时间紧凑,先记录到这。
提供附件以供参考。代码我稍作了调整,不可以直接使用。
 
 
 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics