IntelliJ IDEA 2017版 spring-boot 2.0.5 邮件发送简单实例 (三)

一、搭建SpringBoot项目

详见此文:https://www.cnblogs.com/liuyangfirst/p/8298588.html

注意:

需要添加mail依赖的包,同时还添加了lombock,方便日志打印。如图所示

二、启动Application,测试项目搭建是否成功

三、配置properties文档

1 #########邮箱协议
2 spring.mail.host=smtp.163.com  ####还可以是smtp.126.com 等
3 ##########发送邮件的用户名
4 spring.mail.username= 你的邮箱
5 ########移动端客户授权码(需要开通POP3授权)
6 spring.mail.password= 授权密码
7 #######配置邮件发送默认编码utf-8
8 spring.mail.default-encoding=UTF-8

注意:
        需要授权码,163为例,163官网授权码开通如下

https://help.mail.163.com/faqDetail.do?code=d7a5dc8471cd0c0e8b4b8f4f8e49998b374173cfe9171305fa1ce630d7f67ac2cda80145a1742516

四、业务逻辑

1、需要发件人邮箱地址

2、需要调用自带邮箱封装的类,JavaMailSender

3、需要将收件人,主题,内容填入到方法内,最后,调用JavaMailSender的send方法发送

 1 package com.baidu.mailtest.service;
 2
 3 import lombok.extern.slf4j.Slf4j;
 4 import org.springframework.beans.factory.annotation.Autowired;
 5 import org.springframework.beans.factory.annotation.Value;
 6 import org.springframework.mail.SimpleMailMessage;
 7 import org.springframework.mail.javamail.JavaMailSender;
 8 import org.springframework.stereotype.Service;
 9
10 /******************************
11  * @author : liuyang
12  * <p>ProjectName:mail  </p>
13  * @ClassName :  MailService
14  * @date : 2018/9/22 0022
15  * @time : 22:57
16  * @createTime 2018-09-22 22:57
17  * @version : 2.0
18  * @description :
19  *
20  *
21  *
22  *******************************/
23
24 @Service
25 @Slf4j
26 public class MailService {
27
28
29     /**
30      * 发件人邮箱地址
31      */
32     @Value("${spring.mail.username}")
33     private String fromUserName;
34
35
36     @Autowired
37     private JavaMailSender javaMailSender;
38
39
40     /**
41      * 一般发送邮件方法
42      *
43      * @param to      发送给某人
44      * @param subject 邮件主题
45      * @param context 邮件内容
46      */
47     public void sendSimpleMail(String to, String subject, String context) {
48
49         SimpleMailMessage simpleMailMessage = new SimpleMailMessage();
50         simpleMailMessage.setTo(to);
51         simpleMailMessage.setSubject(subject);
52         simpleMailMessage.setText(context);
53         simpleMailMessage.setFrom(fromUserName);
54
55         javaMailSender.send(simpleMailMessage);
56     }
57
58 }

五、编写测试类

 1 package com.baidu.mailtest;
 2
 3 import com.baidu.mailtest.service.MailService;
 4 import lombok.extern.slf4j.Slf4j;
 5 import org.junit.Test;
 6 import org.junit.runner.RunWith;
 7 import org.springframework.boot.test.context.SpringBootTest;
 8 import org.springframework.test.context.junit4.SpringRunner;
 9
10 import javax.annotation.Resource;
11
12 @RunWith(SpringRunner.class)
13 @SpringBootTest
14 @Slf4j
15 public class MailServiceApplicationTests {
16
17     @Resource
18     MailService mailService;
19
20     @Test
21     public void sayMail() {
22
23         mailService.sendSimpleMail("收件人邮箱", "SpringBoot邮件测试", "今天需要很多美女陪我");
24
25         log.info("发送成功");
26     }
27
28 }

六、观察测试结果

注意发送时候,测试类比较慢,如图位置会卡一会儿。

发送成功如图:

七、源码分享

[email protected]:liushaoye/mailtest.git

原文地址:https://www.cnblogs.com/liuyangfirst/p/9691713.html

时间: 2024-08-29 07:05:26

IntelliJ IDEA 2017版 spring-boot 2.0.5 邮件发送简单实例 (三)的相关文章

Spring Boot 2.0 Intellij Idea 中图文详解打包成可执行Jar

我们使用Spring Boot 2.0 创建好我们的项目后,我们一般需要打包,然后部署到服务器上. 打包步骤: 1. 选中项目,右键--> Open Module Settings. 2. 切换到Artifacts 选项卡下,点击+ 号 3. 点击+ 后,可以看到有很多选项,我们选择Jar, From modules with depedency 4. Main Class 文件浏览或者搜索找到我们的主函数,勾选copy to the out put directory and link via

阿里P9告诉你 Spring Boot 2.0正式发布,升还是不升呢?

Spring帝国Spring几乎是每一位Java开发人员都耳熟能详的开发框架,不论您是一名初出茅庐的程序员还是经验丰富的老司机,都会对其有一定的了解或使用经验.在现代企业级应用架构中,Spring技术栈几乎成为了Java语言的代名词,那么Spring为什么能够在众多开源框架中脱颖而出,成为业内一致认可的技术解决方案呢?我们不妨从最初的Spring Framework开始,看看它为什么能够横扫千军,一统江湖! 挑战权威,一战成名 2004年3月,Spring的第一个版本以及其创始人Rod John

Spring Boot 2.0 热部署指南

Spring Boot 2.0 支持热部署,实现方法很简单 Spring Boot 2.0 有几种热重载的选项. 推荐的方法是使用spring-boot-devtools 因为它提供了额外的开发时间功能,例如支持快速应用程序重启和LiveReload以及合理的开发时配置(如模板缓存). Devtools通过监视类路径的变化来工作. 这意味着静态资源更改必须"建立",以使更改生效. 默认情况下,当您保存更改时,这会在Eclipse中自动发生. 在IntelliJ IDEA中,Make P

Spring Boot 2.0.2 教程 - 目录

Spring Boot 2.0.2 教程 - Hello World - 01 Spring Boot 2.0.2 教程 - Hello World 之 intellij idea 创建web项目 - 02 Spring Boot 2.0.2 教程 - 配置文件application.properties - 03 Spring Boot 2.0.2 教程 - 日志管理 - 04 Spring Boot 2.0.2 教程 - 集成jsp和静态资源css,js,image的访问 - 05 Spri

Spring Boot 2.0 迁移指南

![img](https://mmbiz.qpic.cn/mmbiz_jpg/1flHOHZw6Rs7yEJ6ItV43JZMS7AJWoMSZtxicnG0iaE0AvpUHI8oM7lxz1rRsmaa4IfbolVRG2WQwhXrchmVWS8Q/640?tp=webp&wxfrom=5&wx_lazy=1&wx_co=1) ### 前提 本文档将帮助您把应用程序迁移到 Spring Boot 2.0. ### 在你开始之前 首先,**Spring Boot 2.0需要Ja

Spring Boot 2.0(一):【重磅】Spring Boot 2.0权威发布

就在昨天Spring Boot2.0.0.RELEASE正式发布,今天早上在发布Spring Boot2.0的时候还出现一个小插曲,将Spring Boot2.0同步到Maven仓库的时候出现了错误,然后Spring Boot官方又赶紧把 GitHub 上发布的 v2.0.0.RELEASE 版本进行了撤回.到了下午将问题修复后,又重新进行了上传,至此Spring Boot2.0正式推出! 要知道这是Spring Boot1.0发布4年之后第一次重大修订,因此有多的新功能和特性值得大家期待!在S

Spring boot 2.0 新特性之动态 Banner

Spring Boot 2.0 提供了很多新特性,其中就有一个小彩蛋:动态 Banner,今天我们就先拿这个来尝尝鲜. 配置依赖 使用 Spring Boot 2.0 首先需要将项目依赖包替换为刚刚发布的 2.0 RELEASE,现在网站https://start.spring.io/也将 Spring Boot 2.0 设置为默认版本. <parent> <groupId>org.springframework.boot</groupId> <artifactI

Spring Boot 2.0 整合 ES 5 文章内容搜索实战

本章内容 文章内容搜索思路 搜索内容分词 搜索查询语句 筛选条件 分页.排序条件 小结 一.文章内容搜索思路 上一篇讲了在怎么在 Spring Boot 2.0 上整合ES5 ,这一篇聊聊具体实战.简单讲下如何实现文章.问答这些内容搜索的具体实现.实现思路很简单: 基于「短语匹配」并设置最小匹配权重值 哪来的短语,利用 IK 分词器分词 基于 Fiter 实现筛选 基于 Pageable 实现分页排序 这里直接调用搜索的话,容易搜出不尽人意的东西.因为内容搜索关注内容的连接性.所以这里处理方法比

spring boot 2.0.0由于版本不匹配导致的NoSuchMethodError问题解析

spring boot升级到2.0.0以后,项目突然报出 NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.<init> 异常, 跟踪源代码无果的情况下.突然想到有可能是spring boot 和 spring cloud版本不匹配导致的. 于是,上官网看spring cloud的依赖,首先看Edgware.SR2版本的依赖,可以看出Edgware.SR2依赖是1.5.X版本 <par