在咱们开发过程当中,常常能够用到发送邮件的需求,这里咱们来学习如何在springboot中集成邮件服务。html
在使用邮箱模块以前咱们须要了解邮件发送的原理,即用户A和B之间的邮箱传送过程是须要邮件服务器进行中转的,了解这一点以后咱们开始邮件服务的集成。java
spring: mail: username: 1016037677@qq.com password: aaauhkiqvqlpvbecf host: smtp.qq.com
auhkiqvqlpvbecfd是受权码,你应该使用本身的帐户去设置,从QQ邮箱的帐户出配置邮件服务器的时候您都会了解到相关的东西。spring
一样的,能够经过自动配置类以及属性类了解能够配置的属性。安全
这样,咱们就能够准备发送邮件测试了。springboot
咱们就直接在controller里面发送邮件。服务器
@Autowired JavaMailSenderImpl javaMailSender; @GetMapping("/send") public String send(){ SimpleMailMessage message = new SimpleMailMessage(); // email set message.setSubject("通知"); message.setText("这是发送给您的一封邮件"); // send for message.setTo("1016037686@qq.com"); // who send message.setFrom("1016037677@qq.com"); // send javaMailSender.send(message); return "send success!"; }
这样1016037686@qq.com帐户就能够收到1016037677@qq.com帐户发送的邮件信息了。若是您运行过程当中发生了错误,能够尝试开启QQ安全链接设置:app
spring: mail: username: 1016037677@qq.com password: uauhkiqvqlpvbecf host: smtp.qq.com properties: smtp: ssl: enable: true
@GetMapping("/send2") public String send2() throws MessagingException, IOException { MimeMessage message = javaMailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true); // email set helper.setSubject("通知"); helper.setText("这是发送给您的一封邮件,请<span style='color:red'>圣诞节查收</span>.", true); // 添加附件:先放置本身的文件在项目中 helper.addAttachment("1.jpg", new ClassPathResource("static/1.jpg").getFile()); // send for helper.setTo("1016037686@qq.com"); // who send helper.setFrom("1016037677@qq.com"); // send javaMailSender.send(message); return "send success!"; }
注意:学习