SpringBoot实现QQ邮件发送
建项目
- 创建一个SpringBoot项目
改pom,导入相关依赖
org.springframework.boot
spring-boot-starter-parent
2.2.2.RELEASE<dependencies>
<!--web依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--邮件发送依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-test -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
写Yml,配置application.yml
server:
port: 端口号spring:
mail:
#邮件发送配置
default-encoding: UTF-8
host: smtp.qq.com
# 授权码
password: 你的授权码
# 邮件发送安全配置
properties:
mail:
smtp:
auth: true
starttls:
enable: true
required: true
# 发件人信息
username: 发件人邮箱主启动类EmailSignupApplication
/**
- @author QiuQiu&LL
- @create 2021-08-09 2:18
- @Description:
*/
@SpringBootApplication
@ComponentScan("com.qbb")
public class EmailSignupApplication {
public static void main(String[] args) {
SpringApplication.run(EmailSignupApplication.class, args);
}
}
业务
- 创建Service
/**
- @author QiuQiu&LL
- @create 2021-08-09 2:18
- @Description:
/
public interface MailService {
/*- 发送邮件
- @param to 邮件收件人
- @param subject 邮件主题
- @param verifyCode 邮件验证码
*/
public void sendVertifyCode(String to, String subject, String verifyCode);
}
- 实现类ServiceImpl
package com.qbb.email_signup.service.impl;
import com.qbb.email_signup.service.MailService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.stereotype.Service;/**
@author QiuQiu&LL
@create 2021-08-09 2:20
@Description:
*/
@Service
public class MailServiceImpl implements MailService {@Value("${spring.mail.username}")
private String from;@Autowired
private JavaMailSender mailSender;Logger logger = LoggerFactory.getLogger(this.getClass());
/**
- 发送邮件
- @param to 邮件收件人
- @param subject 邮件主题
- @param verifyCode 邮件验证码
*/
@Override
public void sendVertifyCode(String to, String subject, String verifyCode) {
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom(from); //发送人
message.setTo(to); //收件人
message.setSubject(subject); //邮件名
message.setText(verifyCode); //邮件内容(验证码)
mailSender.send(message);
logger.info("已经发送");
}
}
测试
package com.qbb.email_signup;
import com.qbb.email_signup.service.MailService;
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.test.context.junit4.SpringRunner;/**
@author QiuQiu&LL
@create 2021-08-09 2:28
@Description:
*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = EmailSignupApplication.class)
public class MailServiceTest {@Autowired
private MailService mailService;@Test
public void Test1() {
/填你的测试信息/
String to = "收件人邮箱";
String title = "测试邮件";
String context = "测试验证码";
mailService.sendVertifyCode(to, title, context);
}
}
结果
SpringBoot实现QQ邮件发送的更多相关文章
- 线程——QQ邮件发送
一.造一个QQ邮件发送的窗体 二.开始编写关于邮件发送的代码,以及当点发送按钮的时候,给发送按钮单独造了一个新的线程.这样如果发送的附件太多的话,如果不给发送按钮造新的线程,便会卡住,但是如果给发送按 ...
- Java网络编程:QQ邮件发送客户端程序设计
目录 一.目标介绍 1.认识SMTP(邮件传输协议) 2.POP3(邮件接收协议) 二.基于Base64编码邮箱及授权码 1.开通QQ邮箱SMTP/POP3服务 2.Java编写BASE64编码程序 ...
- Java实现QQ邮件发送客户端
目录 一.前言:QQ邮件发送程序 二.封装SMTP操作 三.实现多线程接收 四.QQ邮件客户端界面设计 1.连接按钮 2.发送按钮 五.QQ邮件发送效果演示 六.总结 一.前言:QQ邮件发送程序 在上 ...
- Springboot+Javamail实现邮件发送
Springboot+Javamail实现邮件发送 使用的是spring-context-support-5.2.6.RELEASE.jar里的javamail javamail 官方文档:javam ...
- python定时利用QQ邮件发送天气预报
大致介绍 好久没有写博客了,正好今天有时间把前几天写的利用python定时发送QQ邮件记录一下 1.首先利用request库去请求数据,天气预报使用的是和风天气的API(www.heweather.c ...
- Java实现QQ邮件发送
首先我们需要两个jar包,点击下面即可下载这两个包: JavaMail mail.jar 1.4.5 JAF(版本 1.1.1) activation.jar 我们这里采用QQ邮箱发送邮件为例,代码如 ...
- 使用Springboot Email实现邮件发送
在springboot配置文件增加emai配置(此种方式不支持QQ邮箱): spring.datasource.type=com.alibaba.druid.pool.DruidDataSource ...
- springboot下实现邮件发送功能
springboot给我们封装好了邮件功能,非常简单,只需要稍微配置下就ok. 引入jar <dependency> <groupId>org.springframework. ...
- springBoot中的邮件发送
1. 添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...
随机推荐
- 闯祸了,生成环境执行了DDL操作《死磕MySQL系列 十四》
由于业务随着时间不停的改变,起初的表结构设计已经满足不了如今的需求,这时你是不是想那就加字段呗!加字段也是个艺术活,接下来由本文的主人咔咔给你吹. 试想一下这个场景 事务A在执行一个非常大的查询 事务 ...
- 创建VS Code 扩展插件
VS Code提供了强大的扩展功能,我们可以通过开发插件实现自己的业务模型编辑器.这里我们快速介绍一下插件的创建.开发和发布过程. 创建插件开发模板 首先需要确认系统中安装了node.js,并且可以使 ...
- 嵌入式学习第四步—C语言学习用软件安装
学习一门计算机语言,不能光靠看书,最主要的是要动手联系.不记得从哪里看到过,要成为一名网络大牛,要有10万行以上的程序才是基础. 首先需要一个能够编辑程序的地方(IDE),经过大约10天的网上看各种视 ...
- Web安全攻防(一)XSS注入和CSRF
跨站脚本攻击(XSS) XSS(Cross Site Scripting),为不和层叠样式表CSS混淆,故将跨站脚本攻击缩写为XSS. 攻击原理: 恶意攻击者往Web页面里插入恶意Script代码,当 ...
- 使用TortoiseGit和Git Bash不需要输入RSA密码(passphrase)的方法
1. 安装和配置Putty 安装 官网下载Putty并安装. 生成ppk密钥 打开puttygen.exe(C:\Program Files\PuTTY\puttygen.exe), 点Convers ...
- [转载]Python 资源大全中文版
[转载]Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理.awesome-python 是 vinta 发起维护的 Python ...
- [luoguP4139]上帝与集合的正确用法
\(\text{Description}\) \(\text{Given a number }p(p\leqslant10^7).\) \(\text{Output }2^{2^{2^{2^{\cdo ...
- service层 必须做业务逻辑的处理
package com.aaa.zxf.service; import com.aaa.zxf.mapper.BookMapper; import com.aaa.zxf.model.Book; im ...
- C++ 类对象内存模型分析
编译环境:Windows10 + VS2015 1.空类占用的内存空间 类占内存空间是只类实例化后占用内存空间的大小,类本身是不会占内存空间的.用sizeof计算类的大小时,实际上是计算该类实例化后对 ...
- buid-helper-maven-plugin简单使用
简介 官方文档 https://www.mojohaus.org/build-helper-maven-plugin/index.html 常用的Goals 名称 说明 build-helper:ad ...