上一篇讲了如何处理异常,并且异常最终会写入日志。但是日志是写在服务器上的,我们无法及时知道。如果能够将异常发送到邮箱,我们可以在第一时间发现这个异常。当然,除此以外,还可以用来给用户发验证码以及各种离线消息等

pom.xml

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>

application.properties

#使用163.com的邮件服务器
spring.mail.host=smtp.163.com
#在163.com注册的用户名,注意这里不需要@163.com后缀
spring.mail.username=******
#在163.com注册的密码
spring.mail.password=******

发送简单邮件

@RestController
public class SampleController {
@Autowired
private JavaMailSender javaMailSender;
@RequestMapping("/mail")
public String sendMail() {
SimpleMailMessage message = new SimpleMailMessage();
//发件人
message.setFrom("******@163.com");
//收件人
message.setTo("******@qq.com");
message.setSubject("邮件标题");
message.setText("邮件内容");
javaMailSender.send(message);
return "发送成功";
}
}

发送含附件的邮件

	@Autowired
private JavaMailSender javaMailSender;
@RequestMapping("/mail")
public String sendMail() throws MessagingException {
//需要创建一个MimeMessageHelper对象,相关参数和简单邮件类似
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
helper.setFrom("******@163.com");
helper.setTo("******@qq.com");
helper.setSubject("邮件标题");
//将邮件内容设置为html格式
helper.setText("<html><body><h1>hello world</h1></body></html>",true);
//定义文件,这是java.main.resources也就是classpach路径下的文件abc.png
ClassPathResource file = new ClassPathResource("/abc.png");
//添加附件文件, 设置文件名为abc.png
helper.addAttachment("abc.png", file);
javaMailSender.send(mimeMessage);
return "发送成功";
}

spring boot(16)-mail发邮件的更多相关文章

  1. shell中mail发邮件的问题

    今天为了监控一下脚本,按照网上说的利用mail 发邮件,mail -s "error预警2" peien@1221.qq.com<'邮件内容',发现出现cc,不知道啥问题,也 ...

  2. Spring Boot 16 条最佳实践

    Spring Boot是最流行的用于开发微服务的Java框架.在本文中,我将与你分享自2016年以来我在专业开发中使用Spring Boot所采用的最佳实践.这些内容是基于我的个人经验和一些熟知的Sp ...

  3. 关于java mail 发邮件的问题总结(转)

    今天项目中有需要用到java mail发送邮件的功能,在网上找到相关代码,代码如下: import java.io.IOException; import java.util.Properties; ...

  4. 关于使用Java Mail发邮件的问题

    今天做东西的时候突然遇到需要发邮件的问题,然后就使用SMTP协议进行邮件的发送.用了一个工具类简化邮件发送的功能, 在这次试验中,我使用了自己的QQ邮箱进行发送邮件的发送者. public class ...

  5. linux lnmp下无法使用mail发邮件的两种解决方法

    在配置了lnmp环境后,出现了mail函数不能发送邮件的问题,其实有两种方法,一是使用sendmail组件,而是使用postfix. 方法一,使用sendmail组件来发邮件  1.安装 sendma ...

  6. Spring Boot (16) logback和access日志

    Spring Boot 内部采用的是Commons Logging进行日志记录,但是在底层为Java Util Logging.Log4J2.Logback等日志框架提供了默认配置. logback ...

  7. spring boot 加入mail邮件支持

    一.添加依赖 <!-- 邮件整合 --> <dependency> <groupId>org.springframework.boot</groupId> ...

  8. 利用springframework+javax.mail发邮件(普通邮件、带附件邮件、HTML格式邮件)

    Spring提供了发送电子邮件的支持,可以发送普通邮件.带附件邮件.HTML格式邮件,甚至还可以使用Velocity模板定制化邮件内容. 一.引入相关的库 1 2 3 4 5 6 7 8 9 10 1 ...

  9. spring boot整合mail

    1.添加依赖 </dependency> <dependency> <groupId>org.springframework.boot</groupId> ...

随机推荐

  1. 第7章—SpringMVC高级技术—不用web.xml,而使用java类配置SpringMVC

    不用web.xml,而使用java类配置SpringMVC DispatcherServlet是Spring MVC的核心,按照传统方式, 需要把它配置到web.xml中. 我个人比较不喜欢XML配置 ...

  2. QMYSQL driver not loaded

    QT5 连接 QMYSQL 数据库时出现错误:QMYSQL driver not loaded. 解决方法如图:(图中使用指令:ldd libqsqlmysql.so) 从结果图显示中:libmysq ...

  3. wordpress 后台404解决办法

    1.vim /usr/local/nginx/conf/wordpress.conf2.rewrite /wp-admin$ $scheme://$host$uri/ permanent;3.ngni ...

  4. Python -- Windows编程 -- 注册表

    1.查询开机自启项 startUp.py import re import win32api, win32con def GetValues(fullname): #分割出基本项name[0] nam ...

  5. 开发工具 -- PyDev的使用

    1.创建PyDev工程 2.创建源文件夹src 3.新建.py文件 其他注意事项 1.设置字体大小 2.显示行号Ctrl + F10 3.编码设置为UTF-8 4.最好将工程创建到默认工作空间 5.总 ...

  6. 原来你一直写错了?!实力分享一波 CSS 使用的书写规范顺序与偏门又实用的样式...

    我们在埋头写代码的时候,还要学会收集整理一些常用的代码小技巧,以便在工作时候,可以及时调取,提高工作效率. 今天,我把之前收集整理的一些CSS代码小技巧分享出来,供你参考学习,希望对你有帮助. 一.C ...

  7. elasticdump

    elasticdump备份elasticsearch里面的某个索引数据 1.     安装环境 需要node.npm.yarn # 去官方下载最新版本的nodejs #wget https://nod ...

  8. 数组操作方法中的splice()和concat() 以及slice()

    1.splice()方法是修改Array的'全能方法',它可以从指定的索引开始删除若干元素,然后再从该位置添加若干元素,其中有三个参数(x,y,z) x:从索引x开始操作数组; y:0或不为0,当为0 ...

  9. [转]Mongodb的下载和安装

    本文转自:https://www.cnblogs.com/htyj/p/8260602.html 下载 下载地址:http://dl.mongodb.org/dl/win32/x86_64  说明:z ...

  10. dev中ASPxListBox单选和多选的设置

    只需要设置SelectionMode,为Multiple时是单选,CheckColumn时是多选