Java发送腾讯企业邮箱
2021/10/1 1:10:48
本文主要是介绍Java发送腾讯企业邮箱,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Java发送腾讯企业邮箱
- 一、java发送腾讯企业邮箱
一、java发送腾讯企业邮箱
package com.cndatacom.cloud1.cdchr.modules.hireinfo.common.emailutil; import com.sun.mail.util.MailSSLSocketFactory; import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeBodyPart; import javax.mail.internet.MimeMessage; import javax.mail.internet.MimeMultipart; import java.io.IOException; import java.security.GeneralSecurityException; import java.util.Date; import java.util.Properties; /** * @ProductName: IntelliJ IDEA * @ProjectName: hr-homa-service * @Description: * @Witticism: Your ability to learn and experience in solving problems will always be the only thing holding you back * @User: Tangerine * @Email: yj_tangerine@163.com | yj_tangerine@sina.com * @Date: 2021/9/30 17:58 星期四 * @version: V1.0.0 */ public class EmailUtil { private static String account = "邮箱登录名";// 登录账户 private static String password = "邮箱登录密码";// 登录密码 private static String host = "smtp.exmail.qq.com";// 服务器地址 private static String port = "465";// 端口 private static String protocol = "smtp";// 协议 //初始化参数 public static Session initProperties() { Properties properties = new Properties(); properties.setProperty("mail.transport.protocol", protocol); properties.setProperty("mail.smtp.host", host); properties.setProperty("mail.smtp.port", port); // 使用smtp身份验证 properties.put("mail.smtp.auth", "true"); // 使用SSL,企业邮箱必需 start // 开启安全协议 MailSSLSocketFactory mailSSLSocketFactory = null; try { mailSSLSocketFactory = new MailSSLSocketFactory(); mailSSLSocketFactory.setTrustAllHosts(true); } catch (GeneralSecurityException e) { e.printStackTrace(); } properties.put("mail.smtp.enable", "true"); properties.put("mail.smtp.ssl.socketFactory", mailSSLSocketFactory); properties.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); properties.put("mail.smtp.socketFactory.fallback", "false"); properties.put("mail.smtp.socketFactory.port", port); Session session = Session.getDefaultInstance(properties, new Authenticator() { @Override protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(account, password); } }); // 使用SSL,企业邮箱必需 end // TODO 显示debug信息 正式环境注释掉 session.setDebug(true); return session; } //@param sender 发件人别名 //@param subject 邮件主题 //@param content 邮件内容 //@param receiverList 接收者列表,多个接收者之间用","隔开 //@param fileSrc 附件地址 public void send(String sender, String subject, String content, String receiverList, String fileSrc) throws IOException, MessagingException { Session session = initProperties(); MimeMessage mimeMessage = new MimeMessage(session); mimeMessage.setFrom(new InternetAddress(account, sender));// 发件人,可以设置发件人的别名 // 收件人,多人接收 InternetAddress[] internetAddressTo = new InternetAddress().parse(receiverList); mimeMessage.setRecipients(Message.RecipientType.TO, internetAddressTo); // 主题 mimeMessage.setSubject(subject); // 时间 mimeMessage.setSentDate(new Date()); // 容器类 附件 MimeMultipart mimeMultipart = new MimeMultipart(); // 可以包装文本,图片,附件 MimeBodyPart bodyPart = new MimeBodyPart(); // 设置内容 bodyPart.setContent(content, "text/html; charset=UTF-8"); mimeMultipart.addBodyPart(bodyPart); // 添加图片&附件 bodyPart = new MimeBodyPart(); bodyPart.attachFile(fileSrc); mimeMultipart.addBodyPart(bodyPart); mimeMessage.setContent(mimeMultipart); mimeMessage.saveChanges(); Transport.send(mimeMessage); } }
这篇关于Java发送腾讯企业邮箱的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26消息中间件源码剖析教程
- 2024-11-26JAVA语音识别项目资料的收集与应用
- 2024-11-26Java语音识别项目资料:入门级教程与实战指南
- 2024-11-26SpringAI:Java 开发的智能新利器
- 2024-11-26Java云原生资料:新手入门教程与实战指南
- 2024-11-26JAVA云原生资料入门教程
- 2024-11-26Mybatis官方生成器资料详解与应用教程
- 2024-11-26Mybatis一级缓存资料详解与实战教程
- 2024-11-26Mybatis一级缓存资料详解:新手快速入门
- 2024-11-26SpringBoot3+JDK17搭建后端资料详尽教程