傳送電子郵件

Spring 框架透過使用 JavaMailSender 介面提供了傳送電子郵件的抽象,Spring Boot 也為其提供了自動配置以及一個啟動器模組。

有關如何使用 JavaMailSender 的詳細說明,請參閱 參考文件

如果 spring.mail.host 和相關庫(由 spring-boot-starter-mail 定義)可用,則在不存在預設 JavaMailSender 的情況下,將建立一個預設的。傳送器可以透過 spring.mail 名稱空間中的配置項進一步定製。有關更多詳細資訊,請參閱 MailProperties

特別是,某些預設的超時值是無限的,您可能希望更改它們,以避免執行緒被無響應的郵件伺服器阻塞,如下例所示

  • 屬性

  • YAML

spring.mail.properties[mail.smtp.connectiontimeout]=5000
spring.mail.properties[mail.smtp.timeout]=3000
spring.mail.properties[mail.smtp.writetimeout]=5000
spring:
  mail:
    properties:
      "[mail.smtp.connectiontimeout]": 5000
      "[mail.smtp.timeout]": 3000
      "[mail.smtp.writetimeout]": 5000

也可以使用 JNDI 中的現有 Session 配置 JavaMailSender

  • 屬性

  • YAML

spring.mail.jndi-name=mail/Session
spring:
  mail:
    jndi-name: "mail/Session"

當設定了 jndi-name 時,它將優先於所有其他與 Session 相關的設定。

© . This site is unofficial and not affiliated with VMware.