小白教程

 找回密码
 立即注册
小白教程 首页 系列教程 Java系列教程 查看内容

Java 发送邮件

发布者: 小白教程

使用Java应用程序发送E-mail十分简单,但是首先你应该在你的机器上安装JavaMail API 和Java Activation Framework (JAF) 。

下载并解压这些文件,最上层文件夹你会发现很多的jar文件。你需要将mail.jar和activation.jar 添加到你的CLASSPATH中。

如果你使用第三方邮件服务器如QQ的SMTP服务器,可查看文章底部用户认证完整的实例。


发送一封简单的 E-mail

下面是一个发送简单E-mail的例子。假设你的localhost已经连接到网络。

  1. // 文件名 SendEmail.java
  2. import java.util.*;
  3. import javax.mail.*;
  4. import javax.mail.internet.*;
  5. import javax.activation.*;
  6. public class SendEmail
  7. {
  8. public static void main(String [] args)
  9. {
  10. // 收件人电子邮箱
  11. String to = "abcd@gmail.com";
  12. // 发件人电子邮箱
  13. String from = "web@gmail.com";
  14. // 指定发送邮件的主机为 localhost
  15. String host = "localhost";
  16. // 获取系统属性
  17. Properties properties = System.getProperties();
  18. // 设置邮件服务器
  19. properties.setProperty("mail.smtp.host", host);
  20. // 获取默认session对象
  21. Session session = Session.getDefaultInstance(properties);
  22. try{
  23. // 创建默认的 MimeMessage 对象
  24. MimeMessage message = new MimeMessage(session);
  25. // Set From: 头部头字段
  26. message.setFrom(new InternetAddress(from));
  27. // Set To: 头部头字段
  28. message.addRecipient(Message.RecipientType.TO,
  29. new InternetAddress(to));
  30. // Set Subject: 头部头字段
  31. message.setSubject("This is the Subject Line!");
  32. // 设置消息体
  33. message.setText("This is actual message");
  34. // 发送消息
  35. Transport.send(message);
  36. System.out.println("Sent message successfully....");
  37. }catch (MessagingException mex) {
  38. mex.printStackTrace();
  39. }
  40. }
  41. }

编译并运行这个程序来发送一封简单的E-mail:

  1. $ java SendEmail
  2. Sent message successfully....

如果你想发送一封e-mail给多个收件人,那么使用下面的方法来指定多个收件人ID:

  1. void addRecipients(Message.RecipientType type,
  2. Address[] addresses)
  3. throws MessagingException

下面是对于参数的描述:

  • type:要被设置为TO, CC 或者BCC. 这里CC 代表抄送、BCC 代表秘密抄送y. 举例:Message.RecipientType.TO

  • addresses: 这是email ID的数组。在指定电子邮件ID时,你将需要使用InternetAddress()方法。



123下一页
上一篇:Java 网络编程下一篇:Java 多线程编程

Archiver|手机版|小黑屋|小白教程 ( 粤ICP备20019910号 )

GMT+8, 2024-9-20 01:38 , Processed in 0.018423 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

返回顶部