为了使您的应用程序能够发送电子邮件,您可以使用JavaMail API,在JDK 1.6之前,您还需要JavaBeans激活框架。JAF jar文件应包含在您的应用程序类路径中。
package org.nhooo.example.mail; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import java.util.Properties; public class SendingEmailDemo { public static void main(String[] args) { String from = "nhooo@gmail.com"; String to = "nhooo@gmail.com"; String subject = "Hi There..."; String text = "How are you?"; // 用于存储邮件服务器smtp信息(例如主机)的属性 //名称和端口号。使用此属性,我们创建一个会话 // 对象,我们将从中创建Message对象。 Properties properties = new Properties(); properties.put("mail.smtp.host", "smtp.gmail.com"); properties.put("mail.transport.protocol", "smtp"); properties.put("mail.smtp.starttls.enable", "true"); properties.put("mail.smtp.port", "587"); Session session = Session.getDefaultInstance(properties, null); try { // 邮件是要通过传输对象发送的邮件msg。 // 在Message对象中,我们设置发件人地址和 //收件人地址。这两个地址都是 //InternetAddress。对于收件人地址,我们还可以设置 //收件人的类型,该值可以是TO,CC或BCC。下一个 // 在两行中,我们设置了电子邮件主题和内容文本。 Message msg = new MimeMessage(session); msg.setFrom(new InternetAddress(from)); msg.setRecipient(Message.RecipientType.TO, new InternetAddress(to)); msg.setSubject(subject); msg.setText(text); // 将消息发送给收件人。 Transport.send(msg, "nhooo", "********"); } catch (MessagingException e) { e.printStackTrace(); } } }
Maven依赖
<!-- http://repo1.maven.org/maven2/javax/mail/javax.mail-api/1.5.6/javax.mail-api-1.5.6.jar --> <dependency> <groupId>javax.mail</groupId> <artifactId>javax.mail-api</artifactId> <version>1.5.6</version> </dependency> <!-- http://repo1.maven.org/maven2/javax/mail/mail/1.4.7/mail-1.4.7.jar --> <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </dependency>