我们有一个定期向用户发送电子邮件的Web应用程序。目前我们在代码中生成html版本和文本版本。但是,维护起来很麻烦。
是否有一个好的电子邮件模板系统可以从同一个Java模板生成电子邮件的html和文本版本?
一些要求:
如果对你的答案很重要,我们正在使用Struts ......< cough> 1< / cough&gt ;.
答案 0 :(得分:2)
您可以使用一个实用程序,通过剥离标记并转换特殊的HTML字符,将HTML转换为Java格式的文本(Google for the,例如this one)。但是,这不会为您提供所需的一切,尤其是不格式化(如列表)和链接。
另一个选择是使用XSLT将您的XHTML(正确编写...)转换为文本并使用XSLT处理器(如Xalan-J或Saxon)来运行它。只要您的要求很简单(例如,您不关心CSS问题),这是一个相当简单的XSLT练习。
答案 1 :(得分:2)
我还建议使用模板引擎。创建两个模板,一个用于文本部分,另一个用于HTML部分。使用模板引擎的include功能,以便您可以在两个模板中重复使用文字文本。
答案 2 :(得分:0)
我已成功使用Freemarker模板为电子邮件准备txt和html内容。如果你使用Spring,它可以使事情更容易,因为它具有所有必要的管道。即使没有Spring,JavaMail API也是用户友好的,所以它应该不是问题。
答案 3 :(得分:0)
取Apache Velocity。我不知道更强大的模板引擎。