有一种从java代码发送电子邮件的简单方法吗?
答案 0 :(得分:7)
您可以使用JavaMail或CommonsEmail(基于JavaMail构建)
这是Commons Mail的一个简单示例,取自this page:
SimpleEmail email = new SimpleEmail();
email.setHostName("mail.myserver.com");
email.addTo("jdoe@somewhere.org", "John Doe");
email.setFrom("me@apache.org", "Me");
email.setSubject("Test message");
email.setMsg("This is a simple test of commons-email");
email.send();
答案 1 :(得分:1)
如果您想要一个简单的邮件API和/或希望能够访问POP3而不是只有SMTP,请查看JavaMail API。如何使用它包含在优秀的 FAQ。
中如果您想要一个不那么臃肿且更方便的API来发送邮件,请前往Apache Commons Email,而User Guide又构建在JavaMail API之上。如何使用它包含在{{3}}。
中答案 2 :(得分:0)
有几种方法可以做到这一点,最好的方法是使用java邮件。 查看此示例以获取更多信息: http://www.javacommerce.com/displaypage.jsp?name=javamail.sql&id=18274
答案 3 :(得分:0)
尝试标准JavaMail API!好像有quickstart
答案 4 :(得分:0)
有一个很好的短期课程:“jGuru: Fundamentals of the JavaMail API” - 尝试一下。
它包含代码片段以及它们和邮件协议的解释(如果开发人员不知道它们中的每一个如何表现)。
答案 5 :(得分:0)
有 Ogham 库。发送电子邮件的代码很容易编写,您甚至可以使用模板来编写电子邮件的内容。它比其他库更易于使用,因为您不需要处理技术问题(例如在 HTML 中内联图像和样式,它是自动完成的)。 您甚至可以使用 SMTP 服务器在本地测试您的代码,以在通过 SMTP 提供商发送电子邮件之前检查您的电子邮件的结果。 可以使用 SMTP 协议或通过提供商 API(如 SendGrid)发送电子邮件。
package fr.sii.ogham.sample.standard.email;
import java.util.Properties;
import fr.sii.ogham.core.builder.MessagingBuilder;
import fr.sii.ogham.core.exception.MessagingException;
import fr.sii.ogham.core.service.MessagingService;
import fr.sii.ogham.email.message.Email;
public class BasicSample {
public static void main(String[] args) throws MessagingException {
// [PREPARATION] Just do it once at startup of your application
// configure properties (could be stored in a properties file or defined
// in System properties)
Properties properties = new Properties();
properties.put("mail.smtp.host", "<your server host>");
properties.put("mail.smtp.port", "<your server port>");
properties.put("ogham.email.from.default-value", "<email address to display for the sender user>");
// Instantiate the messaging service using default behavior and
// provided properties
MessagingService service = MessagingBuilder.standard() // <1>
.environment()
.properties(properties) // <2>
.and()
.build(); // <3>
// [/PREPARATION]
// [SEND AN EMAIL]
// send the email using fluent API
service.send(new Email() // <4>
.subject("BasicSample")
.body().string("email content")
.to("ogham-test@yopmail.com"));
// [/SEND AN EMAIL]
}
}
还有许多其他的 features 和 samples / spring samples。