SpringBoot实现发送邮件任务
本文实例为大家分享了SpringBoot实现发送邮件任务的具体代码,供大家参考,具体内容如下
1.pom中引入spring-boot-starter-mail
<dependencies> <!--邮件--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> <!--web--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies>
2.假如 张三@qq.com 给 李四@163.com 发送邮件,张三首先要登录自己的邮箱,所以先要配置发送者的账号密码,服务器地址。
注意:第三方登录邮箱的时候,使用的不是邮箱的原本密码,使用的是临时授权码。
以QQ邮箱为例子,打开邮箱!
点击账户
往下拉,全部开启,生成授权码!
全部开启。点击生成授权码!
3.配置application.properties
##发件人邮箱 spring.mail.username=119848xxxx@qq.com ##生成的授权码 spring.mail.password=lojwzgpnrpzmifgg ##QQ的SMIP地址 spring.mail.host=smtp.qq.com ##配置安全连接 spring.mail.properties.mail.smtp.ssl.enable=true
4.在测试类中测试
package com.zyb.task; 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.JavaMailSenderImpl; import org.springframework.mail.javamail.MimeMessageHelper; import org.springframework.test.context.junit4.SpringRunner; import javax.mail.internet.MimeMessage; import java.io.File; @RunWith(SpringRunner.class) @SpringBootTest public class SpringbootTaskApplicationTests { //注入邮件发送器 @Autowired JavaMailSenderImpl javaMailSender; /** * 简单邮件测试 */ @Test public void contextLoads1() { SimpleMailMessage message = new SimpleMailMessage(); message.setText("今晚7点钟开会"); message.setSubject("通知-开会"); //发送者邮箱 message.setFrom("119848xxxx@qq.com"); //发送到哪个邮箱 message.setTo("zyb_xxx@126.com"); javaMailSender.send(message); } /** * 复杂邮件测试 */ @Test public void contextLoads2() throws Exception{ //1.创建一个复杂的消息邮件 MimeMessage mimeMessage = javaMailSender.createMimeMessage(); //第二个参数 是否需要上传附件 MimeMessageHelper helper = new MimeMessageHelper(mimeMessage,true); //邮件设置 //这里可以使用html标签样式 helper.setText("<b style='color:red'>今晚7点钟开会</b>",true); helper.setSubject("通知-开会"); //发送者邮箱 helper.setFrom("119848xxxx@qq.com"); //发送到哪个邮箱 helper.setTo("zyb_xxx@126.com"); //上传附件 附件名,路径 helper.addAttachment("1.jpg",new File("C:\\Users\\Administrator\\Desktop\\img\\iphone壁纸\\1.jpg")); javaMailSender.send(mimeMessage); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
springboot在filter中如何用threadlocal存放用户身份信息
这篇文章主要介绍了springboot中在filter中如何用threadlocal存放用户身份信息,本文章主要描述通过springboot的filter类,在过滤器中设置jwt信息进行身份信息保存的方法,需要的朋友可以参考下2024-07-07maven坐标Dependencies和Exclusions的使用
这篇文章主要介绍了maven坐标Dependencies和Exclusions的使用,很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-12-12如何使用Spring Security实现用户-角色-资源的权限控制
文章介绍了如何通过SpringSecurity实现用户-角色-资源的权限管理,包括基于角色的请求控制、加载用户角色信息、角色与资源的关联等步骤,同时,提供了一些测试场景,以验证权限控制是否正确,感兴趣的朋友跟随小编一起看看吧2024-10-10Maven编译遇到Process terminated问题(四种情况全部解决)
这篇文章主要介绍了Maven编译遇到Process terminated问题(四种情况全部解决),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-07-07
最新评论