Java Mail API的替代品

时间:2010-01-19 13:56:41

标签: java javamail

我正在尝试发送带有附件的电子邮件,并发现java邮件api令人生气。

javax.activation.DataHandler只有两个实现,它要求我创建一个本地文件来发送附件。可能我必须编写自己的DataHandler实现,但此时我不想这样做。

提前感谢!

阿迪

编辑:我的意思是javax.activation.DataSource而不是javax.activation.DataHandler

3 个答案:

答案 0 :(得分:10)

Spring提供了 partial wrapper around the JavaMail API ,让它更容易吞下。

例如,MimeMessageHelper类允许您使用各种接口including from a general InputStream source添加附件。

JavaMail的底层机制非常全面和强大,它只是垃圾的API。这在很大程度上解决了这个问题。

答案 1 :(得分:1)

您是否尝试apache commons执行此任务? 它有MultiPartEmail,有几个重载的attach方法。

答案 2 :(得分:1)

编写自定义DataSource非常简单(我在一年前为我们的一个应用程序一起扔了一个,花了不到一个小时)。如果这是您使用JavaMail的唯一问题,我建议您试一试。

尽管如此,我同意JavaMail对于最常见的用例来说肯定过于复杂。