//获取到当前的时间
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
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
一线互联网大厂Java核心面试题库
正逢面试跳槽季,给大家整理了大厂问到的一些面试真题,由于文章长度限制,只给大家展示了部分题目,更多Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等已整理上传,感兴趣的朋友可以看看支持一波!
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
Batis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等已整理上传,感兴趣的朋友可以看看支持一波!
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!