如何对SMS模板使用速度

时间:2019-07-03 08:32:28

标签: java sms velocity amazon-sns template-engine

我正在研究需要通过Amazon SNS发送SMS的Java服务。

我正在使用Velocity模板来生成个性化电子邮件,并考虑也将其用于SMS。

但是我认为这不是正确的方法,因为用于发送SMS的AWS开发工具包方法将消息视为字符串。这将迫使我生成一个文件,然后读取它以将内容作为字符串获取。

我能想到的唯一替代方法是在数据库中将模板存储为TINYTEXT(SMS大小限制为140字节),并使用String.replaceAll()代替速度。

但是我想知道是否有更好的方法来做到这一点,或者使用速度会严重损害性能。

1 个答案:

答案 0 :(得分:2)

VelocityEngine.evaluate

之前,无需生成文件即可使用速度
  

使用上下文将输入字符串渲染到输出编写器中。在动态构建模板或要使用Velocity作为令牌替换器时使用。

Example

VelocityContext context = new VelocityContext();
context.put("param", paramMap);
context.put("placeList", placeList);
StringWriter writer = new StringWriter();
ve.evaluate(context, writer, "", template);
return writer.toString();