赞
踩
经过日积月累, 以下是小编归纳整理的深入了解Java虚拟机文档,希望可以帮助大家过关斩将顺利通过面试。
由于整个文档比较全面,内容比较多,篇幅不允许,下面以截图方式展示 。
由于篇幅限制,文档的详解资料太全面,细节内容太多,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!
}
public void setPassword(String password) {
this.password = password;
}
public String getSenderName() {
return senderName;
}
public void setSenderName(String senderName) {
this.senderName = senderName;
}
@Override
public String toString() {
return “MailProperties{” +
“host='” + host + ‘’’ +
“, username='” + username + ‘’’ +
“, password='” + password + ‘’’ +
“, senderName='” + senderName + ‘’’ +
‘}’;
}
}
}
3.发送邮件方法
@Autowired
private EmailConfig emailConfig;
private final List senderList;
/**
获取MailSender
@return CustomMailSender
*/
public JavaMailSenderImpl getJavaMailSender(String username) {
Map<String, EmailConfig.MailProperties> mailConfigs=emailConfig.getConfigs();
log.info(“初始化mailSender,mailConfigs={}”,mailConfigs);
for (EmailConfig.MailProperties mailProperties : mailConfigs.values()) {
log.info(“mailConfigs.values(),mailProperties={}”,mailProperties);
// 邮件发送者
JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl();
javaMailSender.setHost(mailProperties.getHost());
//5、SMTP服务器: 默认端口 换成腾讯云服务器后,需要将端口换成465
javaMailSender.setPort(25);
//6、//发送邮件协议名称
javaMailSender.setProtocol(“smtp”);
//7、编码格式
javaMailSender.setDefaultEncoding(“UTF-8”);
javaMailSender.setUsername(mailProperties.getUsername());
javaMailSender.setPassword(mailProperties.getPassword());
//8、创建连接对象,连接到邮箱服务器
Properties properties = new Properties();
//发送服务器需要身份验证,要采用指定用户名密码的方式去认证
properties.put(“mail.smtp.auth”, true);
properties.put(“mail.smtp.starttls.enable”, true);
//9、添加连接对象到邮件对象中
javaMailSender.setJavaMailProperties(properties);
// 添加数据
senderList.add(javaMailSender);
}
if (StringUtil.isNull(username)) {
throw new MyException(ExceptionEnum.EMAIL_ERROR_TYPE);
}
if (senderList.isEmpty()) {
throw new MyException(ExceptionEnum.EMAIL_ERROR_TYPE);
}
for (JavaMailSenderImpl javaMailSender : senderList) {
if (username.equals(javaMailSender.getUsername())) {
return javaMailSender;
}
}
// 随机返回一个JavaMailSender
return senderList.get(new Random().nextInt(senderList.size()));
}
/**
发送邮件的方法
@Param to :给谁发邮件
@Param code : 邮件的激活码
@Param subject : 主题
@Param text : 内容
*/
public void sendMail(String username, String toEmail, String code, final String subject, final String text) {
try {
JavaMailSenderImpl javaMailSender = getJavaMailSender(username);
int count = 1;
//10、创建
//可以发送几封邮件:可以这里 for循环多次
MimeMessage mimeMessage = getMimeMessage(username, toEmail, subject, text, javaMailSender);
//11、发送邮件
javaMailSender.send(mimeMessage);
log.info(“发送 第” + count + “封邮件”);
count++;
log.info(“发往 " + toEmail + " 邮件发送成功”);
} catch (MessagingException e) {
log.error(“发往 " + toEmail + " 邮件发送异常”, e);
}
}
//声明一个Message对象(代表一封邮件),从session中创建
private MimeMessage getMimeMessage(String username, String toEmail, String subject, String text, JavaMailSenderImpl javaMailSender) throws MessagingException {
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true, “UTF-8”);
//发件人
mimeMessageHelper.setFrom(username);
//收件人 : 可以发送给多个收件人,该方法有一个重载的 数组形参
分享一套我整理的面试干货,这份文档结合了我多年的面试官经验,站在面试官的角度来告诉你,面试官提的那些问题他最想听到你给他的回答是什么,分享出来帮助那些对前途感到迷茫的朋友。
资料整理不易,点个关注再走吧
公司校园招聘运维开发岗笔试题
[外链图片转存中…(img-YnLxxn6W-1715142538561)]
资料整理不易,点个关注再走吧
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。