分析
工作中难免会用到邮箱服务,这里整理了五种邮件发送模式:发送文本邮件,发送html邮件,发送附件邮件,发送内联资源邮件,发送模板邮件。以供大家学习参考。最后实战部分模拟邮箱注册含源码。
看一下图(有图有真相)
提前准备
pom.xml配置
application.properties中添加邮箱配置
#邮箱服务器地址spring.mail.protocol=smtpspring.mail.host=smtp.qq.com#邮箱服务器地址spring.mail.username=************@qq.com#邮箱密码spring.mail.password=***********spring.mail.default-encoding=utf-8spring.mail.properties.mail.smtp.auth=truespring.mail.properties.mail.smtp.starttls.enable=truespring.mail.properties.mail.smtp.starttls.required=true
注意:若是qqspring.mail.password=qq授权码,需要开启qq授权码
发送简单文本邮件
@runwith(springrunner.class)@springboottestpublicclassemailtests{@autowiredprivatejavamailsenderjavamailsender;@autowiredprivatetemplateenginetemplateengine;//读取配置文件中的参数@value("${spring.mail.username}")privatestringsender;privatestaticfinalstringrecipient="*************@163.com";/***发送简单文本邮件*/@testpublicvoidsendsimpleemail(){simplemailmessagemessage=newsimplemailmessage();//发送者message.setfrom(sender);//接收者message.setto(recipient);//邮件主题message.setsubject("主题:文本邮件");//邮件内容message.settext("骚扰邮件勿回");javamailsender.send(message);}}
发送html邮件
新增发送html邮件测试方法
/***发送html邮件*/@testpublicvoidsendhtmlemail(){mimemessagemessage=javamailsender.createmimemessage();try{mimemessagehelperhelper=newmimemessagehelper(message,true);helper.setfrom(sender);helper.setto(recipient);helper.setsubject("主题:html邮件");stringbuffersb=newstringbuffer();sb.append("
发送内联资源邮件
新增发送内联资源邮件测试方法
/***发送内联资源邮件*/@testpublicvoidsendinlineresourcemail(){mimemessagemessage=javamailsender.createmimemessage();try{mimemessagehelperhelper=newmimemessagehelper(message,true);helper.setfrom(sender);helper.setto(recipient);helper.setsubject("主题:这是有图片的邮件");stringimgid="avatar";stringcontent="
宫崎骏电影图片:发送模板邮件重点
pom中导入thymeleaf的包
新增模板emailtemplate.html