网站首页 > java教程 正文
前言
在实际项目中,经常需要用到邮件通知功能。比如,用户通过邮件注册,通过邮件找回密码等;又比如通过邮件发送系统情况,通过邮件发送报表信息等等,实际应用场景很多。这篇文章,就教大家通过springboot快速的实现一个发送邮件的功能。
引入依赖
在springboot项目中,引入如下依赖:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>
配置文件
在springboot项目中引入依赖之后,即可在其配置文件中配置邮箱的参数:
application.properties
不同的邮箱,host的配置不一样。如果是其它邮箱,搜索下即可找到。
username为邮箱账号,password为邮箱的授权码(不是密码,需要在邮箱的设置页面中开启smtp)。
注入JavaMailSender实例
邮箱参数配置完之后,即可直接注入JavaMailSender实例。
@Autowired private JavaMailSender javaMailSender;
发送普通邮件
普通邮件,没有样式。实现起来最容易:
@Test public void testSend() throws MessagingException { SimpleMailMessage message = new SimpleMailMessage(); message.setFrom("发送者邮箱地址"); message.setTo("接受者邮箱地址"); message.setSubject("这是标题"); message.setText("这是内容"); javaMailSender.send(message); }
From需要和配置文件中的username一致,否则会报错。
To为邮件接收者;
Subject为邮件的标题;
Text为邮件的内容。
运行方法,即可收到邮件:
发送HTML邮件
很多时候,我们需要邮件带有美观的样式。这时候,可以使用HTML的样式。我们需要使用javaMailSender的createMimeMessage方法,构建一个MimeMessage,然后使用MimeMessage实例创建出MimeMessageHelper。如下:
@Test public void testSend() throws MessagingException { MimeMessage mimeMessage = javaMailSender.createMimeMessage(); MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage); messageHelper.setSubject("标题"); messageHelper.setFrom("发送者邮箱地址"); messageHelper.setTo("接受者邮箱地址"); messageHelper.setText("<h1>标题</h1><br/><p>这是内容</p>", true); javaMailSender.send(messageHelper.getMimeMessage()); }
这里需要注意的是,setText的时候需要传一个布尔值进去,表名需要使用HTML样式。
运行方法查看结果:
可以看到,h1的样式已经出来了。
总结
本文讲解了如何在springboot中快速的发邮件。介绍了两种发送邮件的方式:1、普通模式;2、HTML模式。其实还支持多种丰富的模式,比如模板引擎等,这里就不讲解了,其实使用起来大同小异。
猜你喜欢
- 2024-09-14 SpringBoot发送简单文本邮件(springboot 发送邮件)
- 2024-09-14 Github 大牛封装 Python 代码,实现自动发送邮件只需三行代码
- 2024-09-14 Java定时发送Email(带Excel附件)(java怎么实现定时任务)
- 2024-09-14 Spring Boot 邮件发送的 5 种姿势
- 2024-09-14 SpringBoot优雅地发送邮件(springboot发送邮件的步骤)
- 2024-09-14 Spring boot 发送邮件及原理(springboot发送outlook邮件)
- 2024-09-14 10分钟搞定Java实现邮箱验证,坦率讲,别被他人割韭菜
- 2024-09-14 25、springboot发送邮件(springboot email)
- 2024-09-14 SpringBoot邮件发送示例(springboot 邮件)
- 2024-09-14 使用spring boot 发送邮件(springboot发送outlook邮件)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)