基于SpringBoot+Email的Java底层框架的实现
啦啦啦啦啦,富贵同学又开始开坑了,出了个免费的专栏,主要给大家从0基础开始用springBoot集成第三方的插件或者功能,如果这篇专栏能帮到你,一定不要忘了点一个赞哦!!欢迎大家收藏分享
还是老规矩,第一步,导jar包
<!--Email--><dependency><groupId>com.sun.mail</groupId><artifactId>javax.mail</artifactId><version>1.6.2</version></dependency><!--Email-->
第二步,申请email授权密码
这里以163邮箱举例:
第三步,编写yml文件
spring:mail: host: smtp.163.com #固定写死的 163邮箱username: masiyi163163@163.com #刚刚生成授权码的邮箱password: NOTZSJISFIOOWDLNY #刚刚生成的授权码default-encoding: UTF-8
第四步,编写工具类
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.FileSystemResource;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.messaging.MessagingException;
import org.springframework.stereotype.Component;import javax.mail.internet.MimeMessage;
import java.io.File;/*** @author MaSiyi* @version 1.0.0 2021/11/20* @since JDK 1.8.0*/
@Component
public class EmailUtil {@Autowiredprivate JavaMailSender javaMailSender;@Value("${spring.mail.username}")private String from;/*** 简单文本邮件* @param to 接收者邮件* @param subject 邮件主题* @param content 邮件内容*/public void sendSimpleMail(String to, String subject, String content){SimpleMailMessage message = new SimpleMailMessage();message.setTo(to);message.setSubject(subject);message.setText(content);message.setFrom(from);javaMailSender.send(message);}/*** 附件邮件* @param to 接收者邮件* @param subject 邮件主题* @param content HTML内容* @param filePath 附件路径* @throws MessagingException*/public void sendAttachmentsMail(String to, String subject, String content,String filePath) throws MessagingException {try {MimeMessage mimeMessage = javaMailSender.createMimeMessage();MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);helper.setTo(to);helper.setSubject(subject);helper.setText(content, true);helper.setFrom(from);FileSystemResource file = new FileSystemResource(new File(filePath));String fileName = file.getFilename();helper.addAttachment(fileName, file);javaMailSender.send(mimeMessage);} catch (javax.mail.MessagingException e) {e.printStackTrace();}}}
第五步,编写controller类
import com.wangfugui.apprentice.common.util.EmailUtil;
import com.wangfugui.apprentice.common.util.ResponseUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;/*** @author MaSiyi* @version 1.0.0 2021/11/20* @since JDK 1.8.0*/
@Api(tags = "邮件服务")
@RestController
@RequestMapping("/email")
public class EmailController {@Autowiredprivate EmailUtil emailUtil;@GetMapping("/sendSimpleMail")@ApiOperation("发送简单邮件")public ResponseUtils sendSimpleMail(String email,String subject,String content) {emailUtil.sendSimpleMail(email,subject,content);return ResponseUtils.success();}@GetMapping("/sendAttachmentsMail")@ApiOperation("发送附件邮件")public ResponseUtils sendAttachmentsMail(String email,String subject,String content,String filePath) {emailUtil.sendAttachmentsMail(email, subject, content, filePath);return ResponseUtils.success();}
}
第六步,测试
查看邮箱
成功!!
好了,就是这么的简单,完整代码请移至SpringBoot+Email查看
基于SpringBoot+Email的Java底层框架的实现相关推荐
- 接私活/毕业设计必备,基于SpringBoot+Activiti的Java底层框架的实现
啦啦啦啦啦,富贵同学又开始开坑了,出了个免费的专栏,主要给大家从0基础开始用springBoot集成第三方的插件或者功能,如果这篇专栏能帮到你,一定不要忘了点一个赞哦!!欢迎大家收藏分享 第一步,导入 ...
- java 快递项目_基于SpringBoot开发的Java快递代拿系统
该项目基于 [基于SSM开发的Java快递代拿系统] 项目全面升级,使用当前最为流行的 SpringBoot 框架,相关技术栈全面更新!是您深入学习 SpringBoot 开发的最佳实践! 相关技术栈 ...
- 基于SpringBoot+Redis的JAVA+SQL电子通讯录系统
基于SpringBoot+Redis的JAVA+SQL电子通讯录系统 1.包含源程序,数据库脚本.代码和数据库脚本都有详细注释. 2.课题设计仅供参考学习使用,可以在此基础上进行扩展完善 代码已经上传 ...
- 基于Springboot+Vue2前后端分离框架的智慧校园系统源码,智慧学校源码+微信小程序+人脸电子班牌
▶ 智慧校园开发环境: 1.使用springboot框架Java+vue2 2.数据库MySQL5.7 3.移动端小程序使用小程序原生语音开发 4.电子班牌固件安卓7.1:使用Java Android ...
- 基于SpringBoot开发的Java web在线聊天系统,即时通讯通信系统,基于IDEA开发
目录 简介 主要实现的功能有: 主要功能截图 温馨提示 简介 今天发布的是一款由Springboot+MySQL+SSM实现的Java web在线聊天系统,适合大家在网上聊天,加好友等操作,极大的方便 ...
- 基于SpringBoot+Mybaits框架开发的OA自动化办公系统Java源码
源码介绍 办公自动化(OA)是面向组织的日常运作和管理,员工及管理者使用频率最高的应用系统,极大提高公司的办公效率.基于SpringBoot+Mybaits框架开发的OA自动化办公系统Java源码,基 ...
- ProxyPool proxy-pool: java 基于springboot框架获取代理ip
PROXY-POOL: java 基于springboot框架获取代理ip
- java基于springboot框架开发的办公自动化OA系统
项目描述 本系统是一个OA办公自动化系统,使用Maven进行项目管理,基于springboot框架开发的项目,mysql底层数据库,前端采用freemarker模板引擎,Bootstrap作为前端UI ...
- java计算机毕业设计基于springboot+vue+elementUI的旅游网站(源码+数据库+Lw文档)
项目介绍 旅游管理平台采用B/S模式,促进了旅游管理平台的安全.快捷.高效的发展.传统的管理模式还处于手工处理阶段,管理效率极低,随着用户的不断增多,传统基于手工管理模式已经无法满足当前用户需求,随着 ...
最新文章
- PHP流程控制语句例题,第四堂、php流程控制语句
- LeetCode 1108. Defanging an IP Address--C++,Python解法
- (chap 2 简单的Http协议) HTTP方法(1)getput
- mysql集群不同步_mysql数据库集群出现1236错误导致主库与从库无法同步的
- docker-machine create -d generic 运行的波折过程及遇见的问题
- gtj2018如何生成工程量报表_土建软件GTJ2018中的十个问题及解决方法
- adb 查看屏幕大小_蚂蚁森林自动收取能量、偷取能量、浇水(使用adb、python)...
- 30秒Python轻松入门-目录
- 如何加密 Ubuntu 安装后的主文件夹
- 同济大学 线性代数 第六版 pdf_同济大学版工程数学 线性代数 第六版 课本
- 山东工商学院 计算机科学与技术,实验中心-山东工商学院计算机科学与技术学院...
- 宏杉科技 难忘十年
- 光猫及二级路由器Openwrt均开启IPv6,满足双层网络内IPv6的获取
- 那些让我印象深刻的bug--04
- 刘昊威新作—东田造型三里屯VILLAGE概念店
- MySQL 8——学习笔记03(插入、更新、删除 数据 [DML语句]、查询数据 [DQL语句])
- MIPS指令集:运算指令、访存指令、分支和跳转、协处理器0指令
- 秋招干货|给面试官满分的自我介绍
- html中上下左右控制对象移动Demo
- 100个高频Spring面试题,助你一臂之力