Spring Boot 參考指南(驗證&發送電子郵件)

35. 驗證

只要類路徑上有JSR-303實現(好比Hibernate驗證器),Bean validation 1.1支持的方法驗證特性就會自動啓用,這就讓bean方法在參數和/或返回值上使用javax.validation約束進行註解,使用這種帶註解的方法的目標類須要在類型級別上使用@Validated註解進行註解,以便搜索它們的方法以找到內聯約束註解。html

例如,如下服務觸發第一個參數的驗證,確保其大小在8到10之間:java

@Service
@Validated
public class MyBean {

    public Archive findByCodeAndAuthor(@Size(min = 8, max = 10) String code,
            Author author) {
        ...
    }

}

36. 發送電子郵件

Spring框架爲使用JavaMailSender接口發送電子郵件提供了一個簡單的抽象,Spring Boot爲它提供了自動配置以及啓動模塊。git

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

若是spring.mail.host和相關庫(如spring-boot-starter-mail所定義的那樣)都是可用的,若是不存在就會建立一個默認的JavaMailSender,發送方能夠經過來自spring.mail命名空間的配置項進一步定製,有關詳細信息,請參閱MailPropertiesgithub

特別是,某些默認超時值是無限的,你可能但願更改該值,以免線程被無響應的郵件服務器阻塞,以下面的示例所示:spring

spring.mail.properties.mail.smtp.connectiontimeout=5000
spring.mail.properties.mail.smtp.timeout=3000
spring.mail.properties.mail.smtp.writetimeout=5000

還能夠使用JNDI中的現有Session配置JavaMailSendersegmentfault

spring.mail.jndi-name=mail/Session

在設置jndi-name時,它優先於全部其餘會話相關的設置。服務器


上一篇:使用WebClient調用REST服務

下一篇:使用JTA分佈式事務

相關文章
相關標籤/搜索