1、邮件发送-工具类

  1. 1、邮件发送服务-QQ报警
  2. 1-1、举例代码:
  3. public void sendMailAlarmQq(String subject, String content, List<String> toAddress) throws MessagingException {
  4. // 创建Properties 类用于记录邮箱的一些属性
  5. Properties props = new Properties();
  6. // 表示SMTP发送邮件,必须进行身份验证
  7. props.put("mail.smtp.auth", "true");
  8. // 此处填写SMTP服务器
  9. props.put("mail.smtp.host", "smtp.qq.com");
  10. // 端口号,QQ邮箱给出了两个端口,但是另一个我一直使用不了,所以就给出这一个587
  11. props.put("mail.smtp.port", "587");
  12. // 此处填写你的账号
  13. props.put("mail.user", "2628598206@qq.com");
  14. // 此处的密码就是前面说的16位STMP口令,要先在QQ邮箱里开启SMTP服务
  15. props.put("mail.password", "kophgxzhujloeaja");
  16. // 构建授权信息,用于进行SMTP进行身份验证
  17. Authenticator authenticator = new Authenticator() {
  18. @Override
  19. protected PasswordAuthentication getPasswordAuthentication() {
  20. // 用户名、密码
  21. String userName = props.getProperty("mail.user");
  22. String password = props.getProperty("mail.password");
  23. return new PasswordAuthentication(userName, password);
  24. }
  25. };
  26. // 使用环境属性和授权信息,创建邮件会话
  27. Session mailSession = Session.getInstance(props, authenticator);
  28. // 创建邮件消息
  29. MimeMessage message = new MimeMessage(mailSession);
  30. //message.addHeader("X-Mailer", "Microsoft Outlook Express 6.00.2900.2869");
  31. // 设置发件人
  32. InternetAddress form = new InternetAddress(props.getProperty("mail.user"));
  33. message.setFrom(form);
  34. // 设置邮件标题
  35. message.setSubject(subject);
  36. // 设置邮件的内容体
  37. message.setContent(content, "text/html;charset=UTF-8");
  38. for (String address:toAddress) {
  39. // 设置收件人的邮箱
  40. InternetAddress to = new InternetAddress(address);
  41. message.setRecipient(RecipientType.TO, to);
  42. // 发送邮件
  43. Transport.send(message);
  44. }
  45. }
  46. 2、邮件发送服务
  47. @Value("${email.name}")
  48. private String emailName;
  49. @Value("${email.password}")
  50. private String emailPassword;
  51. Properties prop = new Properties();
  52. prop.put("mail.host", "smtp.aliyun.com");
  53. prop.put("mail.smtp.port", "465");
  54. //prop.put("mail.smtp.port","25");
  55. prop.put("mail.smtp.auth", "true");
  56. prop.put("mail.transport.protocol", "smtp");
  57. prop.put("mail.smtp.ssl.enable", "true");
  58. Session session = Session.getInstance(prop);
  59. session.setDebug(false);
  60. Transport ts = session.getTransport();
  61. ts.connect(emailName, emailPassword);
  62. Message message = new MimeMessage(session);
  63. message.setSentDate(new Date());
  64. message.setFrom(new InternetAddress(emailName, subject));
  65. message.setSubject(subject);
  66. message.setContent(content, "text/html;charset=utf-8");
  67. for(String str : toAddress) {
  68. message.setRecipient(RecipientType.TO, new InternetAddress(str));
  69. ts.sendMessage(message, message.getAllRecipients());
  70. }