SpringBoot任务之详解邮件任务

网友投稿 477 2023-01-12

SpringBoot任务之详解邮件任务

SpringBoot任务之详解邮件任务

01: 异步任务

02: 定时任务

一、SpringBoot--任务:邮件任务

1.1 添加依赖(增加邮件支持)

pom.xml

org.springframework.boot

spring-boot-starter-mail

1.2 获取第三方授权码

1.2.1 登录QQ邮箱

1.2.2 点击设置

1.2.3 切换到账户

1.2.4 开启服务

1.2.5 验证密保

1.2.6 成功获取授权码

这是为了不直接暴露QQ密码设置的机制

ljoghujwhbkpbaff

1.2.7 保存更改(左下角)

1.3 配置邮件信息

application.properties

# qq邮箱

spring.mail.username=1585526224@qq.com

# 刚刚生成的授权码

spring.mail.password=ljoghujwhbkpbaff

# qq邮箱的host

spring.mail.host=smtp.qq.com

#开启加密验证(qq邮箱)

spring.mail.properties.mail.smtp.ssl.enable=true

1.4 简单邮件发送

直接调用SpringBoot的javaMailSenderImpl类,使用SimpleMailMessage发送简单邮件

EmaildemoApplicationTests.java

package com.tian.emaildemo;

import org.junit.jupiter.api.Test;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.boot.test.context.SpringBootTest;

import org.springframework.mail.SimpleMailMessage;

import org.springframework.mail.javamail.JavaMailSenderImpl;

@SpringBootTest

class EmaildemoApplicationTests {

@Autowired

JavaMailSenderImpl mailSender;

@Test

void contextLoads() {

SimpleMailMessage simpleMailMessage = new SimpleMailMessage();

// 邮件主题

simpleMailMessage.setSubject("你好");

// 邮件文本

simpleMailMessage.setText("Hello world");

// 接收方

simpleMailMessage.setTo("1585526224@qq.com");

// 发送方

simpleMailMessage.setFrom("1585526224@qq.com");

// 发送邮件

mailSender.send(simpleMailMessage);

}

}

运行结果:

1.5 复杂邮件发送

调用mailSender.createMimeMessage()并使用MimeMessageHelper配置邮件内容,发送即可,邮件内容后设置为true可以解析html格式的内容

EmaildemoApplicationTests.java

@Test

void contextLoads() throws MessagingException {

SimpleMailMessage simpleMailMessage = new SimpleMailMessage();

//复杂邮件

MimeMessage mimeMessage = mailSender.createMimeMessage();

//组装

MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);

mimeMessageHelper.setSubject("复杂邮件");

// 发送文本: html文本

mimeMessageHelper.setText("

\n" +

" 海客谈瀛洲,烟涛微茫信难求;
\n" +

"\n" +

" 越人语天姥,云霞明灭或可睹。
\n" +

"\n" +

" 天姥连天向天横,势拔五岳掩赤城。
\n" +

"\n" +

" 天台四万八千丈,对此欲倒东南倾。
\n" +

"\n" +

" (四万 一作:一万)我欲因之梦吴越,一夜飞度镜湖月。
\n" +

"\n" +

" (度 通:渡)湖月照我影,送我至剡溪。
\n" +

"\n" +

" 谢公宿处今尚在,渌水荡漾清猿啼。
\n" +

EKRwIJG "
\n" +

" 脚著谢公屐,身登青云梯。
\n" +

"\n" +

" 半壁见海日,空中闻天鸡。
\n" +

"\n" +

" 千岩万转路不定,迷花倚石忽已暝。
\n" +

"\n" +

" 熊咆龙吟殷岩泉,栗深林兮惊层巅。
\n" +

"\n" +

" 云青青兮欲雨,水澹澹兮生烟。
\n" +

"\n" +

" 列缺霹雳,丘峦崩摧。
\n" +

"
\n" +

" 洞天石扉,訇然中开。
\n" +

"\n" +

" 青冥浩荡不见底,日月照耀金银台。
\n" +

"\n" +

" 霓为衣兮风为马,云之君兮纷纷而来下。
\n" +

"\n" +

" 虎鼓瑟兮鸾回车,仙之人兮列如麻。
\n" +

"\n" +

" 忽魂悸以魄动,恍惊起而长嗟。
\n" +

"
\n" +

" 惟觉时之枕席,失向来之烟霞。
\n" +

"\n" +

" 世间行乐亦如此,古来万事东流水。
\n" +

"\n" +

" 别君去兮何时还?
\n" +

"\n" +

" 且放白鹿青崖间。
\n" +

"\n" +

" 须行即骑访名山。
\n" +

"\n" +

" 安能摧眉折腰事权贵,使我不得开心颜!
\n" +

"

// 发送图片

mimeMessageHelper.addAttachment("重庆理工大学夜景.jpg", new File("D:\\图片\\schoolNight.jpg"));

mimeMessageHelper.setTo("1585526224@qq.com");

mimeMessageHelper.setFrom("1585526224@qq.com");

mailSender.send(mimeMessage);

}

运行结果:

我不知道为什么:我写的css样式在电http://脑上面不可预见,但是在我的手机QQ邮箱确是可以看见的。欢迎知道的大神告诉我

1.6 可以把上面复杂发送邮件封装成一个方法

public void SendMail(Boolean html, String title, String text, File file, String sendTo, String sendFrom) throws MessagingException {

//复杂邮件

MimeMessage mimeMessage = mailSender.createMimeMessage();

//组装

MimeMessageHelper mimeMessageHelper = new MimeMessageHelper(mimeMessage, true);

mimeMessageHelper.setSubject(title);

mimeMessageHelper.setText(text, html);//true,开启html解析

mimeMessageHelper.addAttachment("1.jpg", file);

mimeMessageHelper.setTo(sendTo);

mimeMessageHelper.setFrom(sendFrom);

mailSender.send(mimeMessage);

}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:心理app运营模式(心理app运营模式分析)
下一篇:银行小程序维护方案(银行 小程序)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~