如何使用Spring发送电子邮件通知(用户注册,导入完成)

时间:2012-02-28 21:04:22

标签: spring email notifications

我想这不是一个特定的问题,而是如何获得想法。

我们有一个Flex - Spring - JMS - Hibernate webapp。我们的要求是在发生某些事件时发送自动电子邮件(新用户注册,用户成功导入导入)。我们将在数据库中包含电子邮件地址,内容,主题等。我们可以将邮件服务器设置硬编码(或在数据库中)。我想将此作为重新使用的单独服务。我想了解如何实现这一目标,并提供一些最佳解决方案。我是使用JMS还是Spring的Java Mail Sender?哪个更有效,最新。

希望我的问题不要太模糊。您的意见一如既往地受到赞赏:)

由于

哈利

1 个答案:

答案 0 :(得分:3)

这里有一些低调的选择(从最好到最差):

  1. Spring Email support

      

    Spring Framework提供了一个有用的实用程序库,用于发送电子邮件,保护用户免受底层邮件系统的细节影响,并负责代表客户端进行低级资源处理。

    这是最简单的方法(不包括对原始JavaMail API的编码)。如果您需要只发送该电子邮件,则不再需要其他任何内容。您可以在任何需要的地方注意JavaMailSender

  2. Email support

  3.   

    Spring Integration通过MailSendingMessageHandler为出站电子邮件提供支持。它委托Spring的JavaMailSender [...]

    的已配置实例

    此解决方案基于1.如果您需要可捆绑的服务,并捆绑了企业集成模式(如过滤,路由,增强等)和极大的灵活性。如果您的应用程序进行了大量集成,这可能是一个明智的选择,但在维护方面则更为重要。

  4. SMTPAppender

  5.   

    SMTPAppender累积日志记录事件[...],并在用户指定的事件发生后在电子邮件中发送内容[...]。 SMTP电子邮件传输(发送)是异步执行的。

    此Logback appender通常用于在发生ERROR时发送电子邮件支持/管理员,其中包含错误事件本身和之前的几个事件。但是通过一些配置,您可以轻松地使用它来捕获应用程序中的特定事件(由日志记录语句触发)并发送消息。然而,它会有点麻烦而且不够灵活。

相关问题