前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >原创 | Springboot发邮件,你还不会来打我

原创 | Springboot发邮件,你还不会来打我

作者头像
润森
发布2020-01-14 15:29:36
7200
发布2020-01-14 15:29:36
举报
文章被收录于专栏:毛利学Python

大家好,我是润森。期末化学已挂,谁来烧纸,挂得又有动力学习了?

Python发邮件

Python发邮件是个小儿科,只需要使用 smtplib和email

smtplib是用来发送邮件用的,email是用来构建邮件内容的。

具体博客链接:https://maoli.blog.csdn.net/article/details/89857715

小儿科的东西就不一一论述了

Java发邮件

菜鸟教程迎接有具体教程,

https://www.runoob.com/java/java-sending-email.html

mavenjavax.mail

创建maven工程,就搞定

代码语言:javascript
复制
<!-- https://mvnrepository.com/artifact/cn.howardliu/gear-email -->
<dependency>
    <groupId>cn.howardliu</groupId>
    <artifactId>gear-email</artifactId>
    <version>1.0.1-RELEASE</version>
</dependency>

搜了下Email竟然高达600多jar包,可见Java得强大

其中使用Springboot发邮件,广泛运用

使用Springboot发邮件

Spring 提供了JavaMailSender 接口帮我们来实现邮件的发送。在SpringBoot 更是提供了邮件的发送的 starter 依赖来简化邮件发送代码的开发 。

开通SMTP服务

需要拿到授权码

创建SpringBoot项目

创建SpringBoot项目,只需要引用Web模块即可

在项目的pom.xml文件中引用spring-boot-starter-mail

代码语言:javascript
复制
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

application.properties项目配置

代码语言:javascript
复制
spring.mail.username=2953510364@qq.com
spring.mail.password=授权码
spring.mail.host=smtp.qq.com
spring.mail.properties.mail.smtp.ssl.enable=true
TaskApplicationTests.java测试类

只需要wiredJavaMailSenderImpl进行@Auto标注就ok

代码语言:javascript
复制
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.SimpleMailMessage;

@SpringBootTest
class TaskApplicationTests {

    @Autowired
    JavaMailSenderImpl mailSender;

    @Test
    void contextLoads() {
        SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
        simpleMailMessage.setSubject("通知-润森有空写书");
        simpleMailMessage.setText("今晚7:30写下博客");
        simpleMailMessage.setTo("maolirunsen@126.com ");
        simpleMailMessage.setFrom("2953510364@qq.com");
        mailSender.send(simpleMailMessage);
    }
}

运行测试,这样我的QQ邮箱2953510364@qq.com发送邮件到我的126邮箱maolirunsen@126.com

成功接收

上传文件

发个消息有什么意思呢?我万一要发个文件怎么办?

文件

其实创建一个复杂的消息邮件mailSender,mailSender是Java内置的jar包,通过addAttachment方法简单解决

代码语言:javascript
复制
@Test
public void test02() throws Exception {
    //1、创建一个复杂的消息邮件
    MimeMessage mimeMessage = mailSender.createMimeMessage();
    MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);

    //邮件设置
    helper.setSubject("通知-润森交下书最近的情况");
    helper.setText("<b style='color:red'>其实我啥都没写</b>", true);

    helper.setTo("maolirunsen@126.com ");
    helper.setFrom("2953510364@qq.com");


    //上传文件
    helper.addAttachment("第二章.md", new File("C:\\Users\\YIUYE\\Desktop\\数据之道\\Python数据分析\\第二章.md"));


    mailSender.send(mimeMessage);

}

成功接受

结语

SpringBoot中集成邮件服务记录,小白成长中,望不吝赐教

再自我介绍一下吧。我叫润森,是一个的学习者,分享自己的所学所得。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小刘IT教程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python发邮件
  • Java发邮件
  • 使用Springboot发邮件
    • 开通SMTP服务
    • 创建SpringBoot项目
    • 上传文件
    • 结语
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档