SpringBoot简单/带附件邮件发送
话不多说,直接上代码吧。
1.引入依赖
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-mail -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId><version>2.1.4.RELEASE</version>
</dependency>
2.全局环境配置
#邮件发送配置
spring.mail.host=smtp.qq.com
spring.mail.username=xxx@qq.com //发送方的邮箱
spring.mail.password=密码 // 对于qq邮箱,密码指的是授权码
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=truespring.mail.sender=xxx@qq.com
开始编码:
3. EmailService
public interface EmailService {/*** 简单邮件* @param sendto* @param title* @param content*/void Sender(String sendto, String title, String content);/*** 带附件邮件发送* @param sendto* @param title* @param content* @param file 文件*/void sendAttachementFileMail(String sendto, String title, String content, File file);
}
4.ImpEmailService service接口实现
* @创建人:* @创建时间: 2019/4/18* @描述: 带附件邮件发送*/@Service
public class ImpEmailService implements EmailService {@Value("${spring.mail.sender}")private String sender;@Autowiredprivate JavaMailSender mailSender;/*** @创建人:* @创建时间: 2019/4/18* @描述: 带附件邮件发送*/@Overridepublic void Sender(String sendto, String title, String content) {SimpleMailMessage simpleMailMessage = new SimpleMailMessage();//发件人simpleMailMessage.setFrom(sender);//发送给谁simpleMailMessage.setTo(sendto);//邮件主题simpleMailMessage.setSubject(title);//邮件内容simpleMailMessage.setText(content);mailSender.send(simpleMailMessage);}@Overridepublic void sendAttachementFileMail(String sendto, String title, String content, File file) {MimeMessage mimeMessage = mailSender.createMimeMessage();try {MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true);//发件人messageHelper.setFrom(sender);messageHelper.setTo(sendto);messageHelper.setSubject(title);messageHelper.setText(content);System.out.println("发件人:" + sender + "\n" +"收件人:" + sendto + "\n" +"标题:" + title + "\n" +"内容:" + content);//附件FileSystemResource fileSystemResource = new FileSystemResource(file);String fileName = file.getName();System.out.println(fileName);messageHelper.addAttachment(fileName, fileSystemResource);} catch (MessagingException e) {e.printStackTrace();}mailSender.send(mimeMessage);}
5. Controller
public class EmailController {@AutowiredEmailService emailService;@Autowiredprivate JavaMailSender mailSender;@PutMapping("/sendEmail")public String sendMail(){emailService.Sender("xxx@qq.com", "Spring Boot邮件功能测试", "怎么更换密保手机?+" \n" +1、QQ能登录,密保手机、QQ安全中心手机版中的任何一种可用时,您可以登录QQ安全中心官网->密保手机->更换、通过统一安全验证->更换密保手机审核时间过后,即可更换;+" \n" +" \"2、若您密保手机不在使用,请您进入QQ安全中心官网并登录您的QQ帐号->密保手机->点击“更换”->我已换号->输入新手机号码->更换其他验证方式,通过资料验证即可更换。+" \n" +" \"注:若验证不通过,请继续邀请好友辅助,我们会根据反馈结果重新审核,结果将在4个小时内下发至填写的联系方式,请您留意。");return "发送成功";}@PutMapping("/sendFileEmail")public String sendFileMail(){File file=new File("E:/log/spring.log");emailService.sendAttachementFileMail("xxx@qq.com","Spring Boot带附件邮件功能测试", "请注意查收附件!", file);return "带附件邮件发送成功!";}
}
在PostMan 中测试,
带附件邮件测试
http://localhost:8080/sendFileEmail
简单邮件测试
http://localhost:8080/sendEmail
是正常的, 可以正常发出邮件。
SpringBoot简单/带附件邮件发送相关推荐
- 采用SpringBoot发送简单、抄送、密送、带附件邮件
前言:JavaMail发送邮件的形式多种多样,有简单.抄送.密送.带附件邮件等. 1. 业务需求 实现邮件的简单.抄送.密送和带附件发送四种方式. 2. 实现步骤 在这里,我使用QQ邮箱作为测 ...
- python3发送邮件_Python3使用SMTP发送带附件邮件
一.设置开启SMTP服务并获取授权码 可以参考第一篇文章,这里不再赘述:[一]https://www.jb51.net/article/142220.htm 二.使用Python3 发送带附件的邮件 ...
- Python 发送邮件 和 发送带附件邮件
摘要: 平时运行一些脚本,需要把结果发送到邮箱,可以用python来处理,如下: 1,有邮件服务器: #!/bin/env python # -*- encoding: utf-8 -*- ...
- python邮件发送csv附件_Python2.7 smtplib发送带附件邮件报错STARTTLS解决方法
最近在SIOMP系统中添加一项功能时,即自动发送带附件邮件到指定邮箱时,发现在发送时报错:错误信息:STARTTLS extension not supported by server.很是奇怪,但发 ...
- SpringBoot整合定时任务和邮件发送(邮箱 信息轰炸 整蛊)
SpringBoot整合定时任务和邮件发送(邮箱 信息轰炸 整蛊) 目录 SpringBoot整合定时任务和邮件发送(邮箱 信息轰炸 整蛊) 1.概述 2.最佳实践 2.1创建项目引入依赖(mail) ...
- SpringBoot整合Javamail实现邮件发送
博客主页:踏风彡的博客 博主介绍:一枚在学习的大学生,希望在这里和各位一起学习. 所属专栏:SpringBoot学习笔记 文章创作不易,期待各位朋友的互动,有什么学习问题都可在评论区留言或者私信我,我 ...
- 使用springboot发送带附件邮件(465端口加密邮件)
一.开启SMTP服务 二.编码 1.加依赖(pom.xml) <dependency><groupId>org.springframework.boot</groupId ...
- python中带附件发送电子邮件_python发送带附件邮件
Python SMTP发送邮件 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. py ...
- .net发送带附件邮件
开发工具:vs2008 .net发送邮件相对比较简单.如下几步: 一.配置web.config 要注意邮件服务器的权限设置,是否有此账号,对服务器IP是否有限制等,用户名和密码可以设置在这里,程序中就 ...
最新文章
- 深入理解Java中的final关键字
- Notepad++如何更改背景色(以保护视力色为例)
- java 方法 参数 引用_Java 基础
- python划分数据集_Python数据集切分实例
- golang的一个简单小爬虫demo学习记录
- 蜂窝注册表和永久存储
- Egret资源管理解决方案
- Docker修改容器系统时间命令组
- solaris10下vim安装
- 麒麟v10服务器系统搭建本地源
- MAKEFILE【4】-Makefile中的wildcard用法
- 医院计算机专业年薪,说一些我朋友真实的深圳公立三甲医院编制收入
- streamlit简介和使用教程1
- php是一种什么脚本语言
- Linux系统环境准备-包含[close关闭防火墙/配置主机时间/地区/系统语言
- 三类考试新练习试题附答案
- Java中append方法和add方法的区别
- 国家自然基金相关资料
- 解决win10服务主机:网络服务占用网络宽带的方法(自测有效)
- 8.12 Python web前端 HTML认识