1.导入Maven包
<!--对邮件的支持jar--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>2.发送人信息的配置 发送邮件需要配置很多关于发送人的信息,Springboot对此已经通过MailSenderAutoConfiguration 类进行了基本的配置。
MailSenderAutoConfiguration 类: 这些基本属性又是通过MailProperties来获取 需要做的工作就是给上面的类配置我们自己的发件人相关信息。 添加配置文件:application.properties
application.properties:
# 设置邮箱主机(服务商) spring.mail.host=smtp.qq.com # 设置用户名 spring.mail.username=***@qq.com # 设置密码,该处的密码是QQ邮箱开启SMTP的 **授权码** 而非QQ密码 spring.mail.password= qzbxiwjfrweecacf(邮件官网获取) # 必须进行授权认证,它的目的就是阻止他人任意乱发邮件 spring.mail.properties.mail.smtp.auth=true #SMTP加密方式:连接到一个TLS保护连接 spring.mail.properties.mail.smtp.starttls.enable=true spring.mail.properties.mail.smtp.starttls.required=true准备完毕发送简单邮件****复杂邮件:
package cn.itsource.pethome.org.test; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.MimeMessageHelper; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import javax.mail.internet.MimeMessage; @SpringBootTest @RunWith(SpringJUnit4ClassRunner.class) public class EmailTest { @Autowired private JavaMailSender javaMailSender; /** * 发送简单邮件 */ @Test public void send(){ SimpleMailMessage mailMessage = new SimpleMailMessage(); //设置发送人 mailMessage.setFrom("****@qq.com"); //邮件主题 mailMessage.setSubject("新型冠状病毒防护指南"); //邮件内容 mailMessage.setText("好好在家待着....."); //收件人 mailMessage.setTo(*****@qq.com"); //发送邮件 javaMailSender.send(mailMessage); } /** * 发送复杂邮件 */ @Test public void test2() throws Exception{ //创建复杂邮件对象 MimeMessage mimeMessage = javaMailSender.createMimeMessage(); //发送复杂邮件的工具类 MimeMessageHelper helper = new MimeMessageHelper(mimeMessage,true,"utf-8"); //设置发送人 helper.setFrom("*******@qq.com"); //邮件主题 helper.setSubject("新型冠状病毒防护指南"); http://img30.360buyimg.com/popWaterMark/jfs/t1/67988/7/14094/232759/5db64acfE6ab2b09e/38b5cb3dc38b4b1f.jpg" //邮件内容 helper.setText("<h1>新型冠状病毒防护守则</h1>"+ "<img src='http://img30.360buyimg.com/popWaterMark/jfs/t1/67988/7/14094/232759/5db64acfE6ab2b09e/38b5cb3dc38b4b1f.jpg\"' />",true); //添加附件 照片和文件 //helper.addAttachment("罗宾.jpg",new File("C:\\Users\\hm\\Desktop\\work\\aa.jpg")); //helper.addAttachment("压缩文件", new File("C:\\Users\\hm\\Desktop\\20191010\\2020-02-05-智能商贸-DAY4\\resources\\resources.zip")); //收件人 helper.setTo("*****@qq.com"); //发送邮件 javaMailSender.send(mimeMessage); } }