SpringBoot開發案例之郵件多例項傳送
前言
最近在做郵件傳送的服務,正常來說 SpringBoot 整合mail還是很方便的,然而來了新的需求:A請求使用郵箱C傳送,B請求使用郵箱D傳送,也就是說我們需要配置兩套傳送服務。
單例項首先我們來看下單個服務的配置:
spring.mail.host=smtp.mxhichina.com
spring.mail.username=admin@52itstyle.com
spring.mail.password=123456
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
其他的不用管,我們只需要在用到的時候注入以下即可:
@Autowired
private JavaMailSender mailSender;//執行者
如果大家對如何載入配置以及初始化感興趣,可以瞭解下 spring-boot-autoconfigure 的原理。
多例項由於 mail 並沒有像資料庫那樣提供多資料來源,這裡只能我們自己手動獲取了:
/**
* 建立傳送器
*/
public class MailUtil {
public static JavaMailSenderImpl createMailSender(){
JavaMailSenderImpl sender = new JavaMailSenderImpl();
sender.setHost("smtp.mxhichina.com");
sender.setPort(25);
sender.setUsername("admin@52itstyle.com");
sender.setPassword("123456");
sender.setDefaultEncoding("Utf-8");
Properties p = new Properties();
p.setProperty("mail.smtp.timeout",1000+"");
p.setProperty("mail.smtp.auth","true");
sender.setJavaMailProperties(p);
return sender;
}
}
這裡,順便說一個小功能,在傳送郵件的時候,如何自定義顯示發件人名稱:
MimeMessageHelper helper = new MimeMessageHelper(message, true);
helper.setFrom("345849402@qq.com","爪哇筆記");
最後我們在使用的時候,只需要根據不同的請求使用不同的 sender 就可以了。
專案原始碼碼雲:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1727/viewspace-2812465/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SpringBoot整合Mail傳送郵件&傳送模板郵件Spring BootAI
- SpringBoot傳送郵件Spring Boot
- SpringBoot郵件傳送Spring Boot
- SpringBoot傳送郵件(二)Spring Boot
- SpringBoot傳送郵件(三)Spring Boot
- SpringBoot整合郵件傳送Spring Boot
- Springboot 自動傳送郵件Spring Boot
- springboot如何使用outlook傳送郵件Spring Boot
- 玩轉 SpringBoot2.x 之整合郵件傳送Spring Boot
- SpringBoot實現傳送電子郵件Spring Boot
- Springboot+Javamail實現郵件傳送Spring BootJavaAI
- 郵件傳送
- 傳送郵件
- springboot新增郵件傳送及壓縮功能Spring Boot
- SpringBoot傳送電子郵件(附原始碼)Spring Boot原始碼
- springboot+kafka+郵件傳送(最佳實踐)Spring BootKafka
- PHP回顧之傳送郵件PHP
- java郵件傳送Java
- python傳送郵件Python
- Django——郵件傳送Django
- gmail傳送郵件AI
- phpcms傳送郵件PHP
- 郵件的傳送
- Laravel 傳送郵件Laravel
- thinkjs 傳送郵件JS
- Laravel傳送郵件Laravel
- PHP傳送郵件PHP
- nodejs 傳送郵件NodeJS
- Laravel 使用 rabbitmq 非同步傳送郵件小案例.LaravelMQ非同步
- Java Mail 郵件傳送(二):簡單封裝的郵件傳送JavaAI封裝
- SpringBoot專案實現檔案上傳和郵件傳送Spring Boot
- golang傳送郵件(qq郵箱)Golang
- 郵件傳送案例流的形式檔案不落盤
- Android 快速傳送郵件Android
- 使用phpmailer傳送郵件PHPAI
- 定時傳送郵件
- 使用 smtplib 傳送郵件
- Python SMTP傳送郵件Python