35. Sending email
The Spring Framework provides an easy abstraction for sending email using the
JavaMailSender interface and Spring Boot provides auto-configuration for it as well as a starter module.
Check the reference documentation for a detailed explanation of how you can use
spring.mail.host and the relevant libraries (as defined by
spring-boot-starter-mail) are available, a default
JavaMailSender is created if none exists. The sender can be further customized by configuration items from the
spring.mail namespace, see the
MailProperties for more details.
In particular, certain default timeout values are infinite and you may want to change that to avoid having a thread blocked by an unresponsive mail server:
spring.mail.properties.mail.smtp.connectiontimeout=5000 spring.mail.properties.mail.smtp.timeout=3000 spring.mail.properties.mail.smtp.writetimeout=5000