Java 发送邮件工具类(多个收件人,多个抄送人)

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!

//获取到当前的时间

private static SimpleDateFormat sdfTime = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);

/**

  • 功能描述: 发送邮件的基本配置

  • @param sendEmail 发件人地址

  • @param sendEmailPwd 授权码代替密码(更安全) 授权码的获取:进入个人邮箱,点击设置–>账户, SMTP服务选项 默认情况下这个选项是不开启的。

  •                  点击开启腾讯会进行身份验证,身份验证通过以后,会收到一个用于使用SMTP的16位口令,
    
  •                  验证身份的过程中把收到的口令保存下来,因为后面要使用SMTP功能必须要用到这个口令。
    
  • @param subject 邮件主题

  • @param content 邮件内容

  • @param toEmilAddress 收件人地址

  • @param carbonCopyEmail 抄送人地址

  • @throws Exception

  • @Title: sendEmail

  • @Description: 发送邮件工具类方法

  • @return: void

  • @since: 1.0.0 2018/11/18 19:04

*/

public static boolean sendEmail(String sendEmail, String subject, String content,String toEmilAddress,String carbonCopyEmail, String user, String sendEmailPwd) {

if (toEmilAddress != null) {

//设置基本属性

Properties properties = new Properties();

//设置发送邮件的邮件服务器的属性(这里使用网易的smtp服务器)

properties.put(“mail.smtp.host”, “smtp.tfjybj.com”);

properties.put(“mail.transport.protocol”, “smtp”);

//需要经过授权,也就是有户名和密码的校验,这样才能通过验证(一定要有这一条)

properties.put(“mail.smtp.auth”, true);

// 使用java发送邮件的步骤如下

//1、创建session

Session session = Session.getInstance(properties);

//开启session的调试模式,可以查看当前邮件发送状态

session.setDebug(true);

//创建邮件对象

MimeMessage message = new MimeMessage(session);

try {

//设置发件人

message.setFrom(new InternetAddress(sendEmail));

//设置收件人地址,以逗号隔开

InternetAddress[] sendTo = InternetAddress.parse(toEmilAddress);

message.setRecipients(MimeMessage.RecipientType.TO, sendTo);

//设置收件人地址,以逗号隔开

InternetAddress[] carbonCopy = InternetAddress.parse(carbonCopyEmail);

message.setRecipients(MimeMessage.RecipientType.CC, carbonCopy);

//加载标题

message.setSubject(subject);

// 设置发送时间

message.setSentDate(new Date());

// 设置邮件的文本内容

// 向multipart对象中添加邮件的各个部分内容,包括文本内容和附件

Multipart multipart = new MimeMultipart();

BodyPart contentPart = new MimeBodyPart();

contentPart.setContent(content, “text/html;charset=utf-8”);

multipart.addBodyPart(contentPart);

message.setContent(multipart);

message.saveChanges(); //保存邮件

//2、通过session获取Transport对象(发送邮件的核心API)

Transport transport = session.getTransport(“smtp”);

// 3、通过邮件用户名密码链接

transport.connect(“smtp.tfjybj.com”, user, sendEmailPwd);

//5、发送电子邮件

transport.sendMessage(message, message.getAllRecipients());

transport.close();//关闭连接.

System.out.println(“send success!”);

return true;

} catch (MessagingException e) {

e.printStackTrace();

return false;

}

} else {

return false;

}

}

/**

  • 功能描述:

  • @param: toEmilAddress,违纪人员邮箱地址

  • @param: username,违纪人员姓名

  • @param: disciplineEmail, 纪委邮箱地址

  • @param: disciplineName 纪委姓名

  • @return: boolean

总结

阿里伤透我心,疯狂复习刷题,终于喜提offer 哈哈~好啦,不闲扯了

image

1、JAVA面试核心知识整理(PDF):包含JVMJAVA集合JAVA多线程并发,JAVA基础,Spring原理微服务,Netty与RPC,网络,日志,ZookeeperKafkaRabbitMQ,Hbase,MongoDB,Cassandra,设计模式负载均衡数据库一致性哈希JAVA算法数据结构,加密算法,分布式缓存,Hadoop,Spark,Storm,YARN,机器学习,云计算共30个章节。

image

2、Redis学习笔记及学习思维脑图

image

3、数据面试必备20题+数据库性能优化的21个最佳实践

image
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!
0lrkgj-1714433738015)]

3、数据面试必备20题+数据库性能优化的21个最佳实践

[外链图片转存中…(img-Of7UpPvQ-1714433738015)]
《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门,即可获取!

  • 10
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值