今天就跟大家聊聊有關(guān)使用Spring Boot怎么實現(xiàn)一個郵件服務(wù),可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
我們提供的服務(wù)有:成都網(wǎng)站設(shè)計、做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、高青ssl等。為成百上千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的高青網(wǎng)站制作公司
1. pom.xml文件中引入依賴
org.springframework.boot spring-boot-starter-mail
2. 接口及實現(xiàn)類
2.1 接口
package com.yuhuashang.demo.mail; public interface MailService { public void sendSimpleMail(String to, String subject, String content); }
2.2 實現(xiàn)類
package com.yuhuashang.demo.mail.impl; import com.yuhuashang.demo.mail.MailService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.stereotype.Component; @Component public class MailServiceImpl implements MailService{ private final Logger logger = (Logger) LoggerFactory.getLogger(this.getClass()); @Autowired private JavaMailSender mailSender; @Value("${mail.fromMail.addr}") private String from; @Override public void sendSimpleMail(String to, String subject, String content) { SimpleMailMessage message = new SimpleMailMessage(); message.setFrom(from); message.setTo(to); message.setSubject(subject); message.setText(content); try { mailSender.send(message); logger.info("簡單郵件已經(jīng)發(fā)送。"); }catch (Exception e) { logger.error("發(fā)送簡單郵件時發(fā)生異常!", e); } } }
3. application.properties的配置
# 發(fā)送一方郵件信息 mail.fromMail.addr=XXXXX spring.mail.host=XXXXX spring.mail.password=XXXXX spring.mail.properties.smtp.auth=true spring.mail.properties.smtp.timeout=25000 spring.mail.username=XXXXXX
4. 常用郵箱的配置
4.1 QQ個人郵箱
# 利用QQ個人郵箱發(fā)送郵件 mail.fromMail.addr=XXXXXX@qq.com spring.mail.host=smtp.qq.com spring.mail.password=XXXXXXX // 授權(quán)密碼,非登錄密碼 spring.mail.properties.smtp.auth=true spring.mail.properties.smtp.timeout=25000 spring.mail.username=XXXXXXXX@qq.com
注意:spring.mail.password使用的開啟stmp時,QQ給的授權(quán)碼,目前需要發(fā)送短信開啟。
4.2 163個人郵箱
# 利用163個人郵箱發(fā)送郵件 mail.fromMail.addr=XXXXXX@163.com spring.mail.host=smtp.163.com spring.mail.password=XXXXXXX // 授權(quán)密碼,非登錄密碼 spring.mail.properties.smtp.auth=true spring.mail.properties.smtp.timeout=25000 spring.mail.username=XXXXXXX@163.com
注意:spring.mail.password使用的開啟stmp時,163的授權(quán)碼,目前需要自己設(shè)定。
4.3 阿里云個人郵箱
# 利用aliyun個人郵箱發(fā)送 mail.fromMail.addr=XXXXXX@aliyun.com spring.mail.host=smtp.aliyun.com spring.mail.password=XXXXXX // 默認(rèn)開啟,填登陸密碼即可 spring.mail.properties.smtp.auth=true spring.mail.properties.smtp.timeout=25000 spring.mail.username=XXXXXXX@aliyun.com
注意:spring.mail.password使用的是登陸密碼,阿里云的stmp默認(rèn)開啟的,我在郵箱上沒有發(fā)現(xiàn)可以開啟或關(guān)閉的地方,自己用的登陸密碼試過,是可以用的。
4.4 QQ企業(yè)郵箱
# 利用QQ企業(yè)郵箱發(fā)送郵件 mail.fromMail.addr=XXXXXX@xx.com spring.mail.host=smtp.exmail.qq.com spring.mail.password=XXXXXXX // 授權(quán)密碼,非登錄密碼 spring.mail.properties.smtp.auth=true spring.mail.properties.smtp.timeout=25000 spring.mail.username=XXXXXXXX@xx.com
注意:spring.mail.password使用的是授權(quán)碼,非登陸密碼,最近沒有用QQ企業(yè)郵箱,之前實現(xiàn)過,目前應(yīng)該是這樣的。
4.5 163企業(yè)郵箱
# 利用163企業(yè)郵箱發(fā)送郵件 mail.fromMail.addr=XXXXXX@XXX.com spring.mail.host=smtp.qiye.163.com spring.mail.password=XXXXXXX // 授權(quán)密碼,非登錄密碼 spring.mail.properties.smtp.auth=true spring.mail.properties.smtp.timeout=25000 spring.mail.username=XXXXXX@XXX.com
注意:spring.mail.password使用的是授權(quán)碼,非登陸密碼,由于沒有使用過163企業(yè)郵箱,故不能保證可用性,如果有用過的朋友,可以給個中肯的答案。
4.6 阿里云企業(yè)郵箱
# 利用aliyun企業(yè)郵箱發(fā)送 mail.fromMail.addr=XXXXXXXX@XXX.com spring.mail.host=smtp.mxhichina.com spring.mail.password=XXXXX // 默認(rèn)開啟,填登陸密碼即可 spring.mail.properties.smtp.auth=true spring.mail.properties.smtp.timeout=25000 spring.mail.username=XXXXXX@XXX.com
看完上述內(nèi)容,你們對使用Spring Boot怎么實現(xiàn)一個郵件服務(wù)有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。