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
- PHP回顧之傳送郵件PHP
- ASP.NET之郵件傳送ASP.NET
- 玩轉 SpringBoot2.x 之整合郵件傳送Spring Boot
- SpringBoot實現傳送電子郵件Spring Boot
- Springboot+Javamail實現郵件傳送Spring BootJavaAI
- Laravel 傳送郵件Laravel
- PHP傳送郵件PHP
- Django——郵件傳送Django
- java郵件傳送Java
- Laravel傳送郵件Laravel
- gmail傳送郵件AI
- Oracle郵件傳送Oracle
- java傳送郵件Java
- Powershell郵件傳送
- thinkphp 郵件傳送PHP
- centos 傳送郵件CentOS
- phpcms傳送郵件PHP
- 郵件的傳送
- 教程-Python例項-傳送郵件功能Python
- ASP.net傳送郵件的例項ASP.NET
- Laravel 使用 rabbitmq 非同步傳送郵件小案例.LaravelMQ非同步
- springboot+kafka+郵件傳送(最佳實踐)Spring BootKafka
- springboot新增郵件傳送及壓縮功能Spring Boot
- SpringBoot傳送電子郵件(附原始碼)Spring Boot原始碼
- Java Mail 郵件傳送(二):簡單封裝的郵件傳送JavaAI封裝
- Android開發呼叫第三方郵件應用傳送郵件Android
- 郵件傳送案例流的形式檔案不落盤