我现在所在的公司,由于没有对应的运维人员,而且涉及到系统需要和第三方系统进行API对接,为了每天定时进行API测试,将测试结果进行通知开发,因此从成本角度考虑使用email邮件;,下面我们就来聊聊关于Springboot发送email邮件?接下来我们就一起去了解一下吧!
![Springboot发送email邮件(Springboot发送email邮件)](http://img.studyofnet.com/upimg/777598867.jpg)
Springboot发送email邮件
我现在所在的公司,由于没有对应的运维人员,而且涉及到系统需要和第三方系统进行API对接,为了每天定时进行API测试,将测试结果进行通知开发,因此从成本角度考虑使用email邮件;
POM引入依赖将下列依赖引入到POM文件,原则上只要引入第一个依赖就行,但是我本地工程一直引入后,还是无法识别相关方法,所有又加了第二个依赖;
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.7</version>
</dependency>
按照你想用邮件服务主机,配置你的发送邮件账号内容;
mail:
host: smtp.qiye.aliyun.com
username: support@mail.ahautoflow.com
password: ********
default-encoding: utf-8
properties:
mail:
smtp:
ssl:
enable: true
如下图所示我的代码(代码写的烂忽喷,留点面子)
private void sendEmailMessage(String description){
List<SysDictData> dictDataList = sysDictTypeService.selectDictDataByType("api_monitor_email");
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom("support@mail.ahautoflow.com");
message.setSubject("通关服务平台API监控");
message.setText(description);
if(dictDataList.isEmpty()){
message.setTo("938282597@qq.com");
try{
mailSender.send(message);
}
catch (Exception e){
e.printStackTrace();
}
}else{
for (SysDictData dictData:dictDataList) {
message.setTo(dictData.getDictValue());
try{
mailSender.send(message);
}
catch (Exception e){
e.printStackTrace();
}
}
}
}
只要在对应代码中加上发送邮件内容,调用接口就行,很简单;
if(result.containsKey("resCode") && "0".equals(result.get("resCode").toString())){
if(result.containsKey("pros")){
JSONArray messageList = result.getJSONArray("pros");
String apiStr = JSON.toJSONString(messageList.get(0));
JSONObject apiMessage = JSONObject.parseObject(apiStr);
if(apiMessage.containsKey("resultCode") && "0".equals(apiMessage.get("resultCode").toString())){
emailStr.append(timeStr ": 出口订单API测试新增功能成功" "\n");
}else{
emailStr.append(timeStr ": 出口订单API测试新增功能失败,错误消息如下:" apiMessage.toString() "\n");
}
}else{
emailStr.append(timeStr ": 出口订单API测试新增功能,返回体异常" "\n");
}
}else {
sendEmailMessage(timeStr ": 出口订单API测试新增功能,服务异常。错误信息如下:" result.toJSONString());
return;
}