我有一个春季启动应用程序,我必须向Gmail和Zoho邮件发送警报邮件。是否可以使用Spring电子邮件模块将邮件发送到多个SMTP服务器,因为我们正在application.yml中配置SMTP地址
答案 0 :(得分:0)
基本上你必须创建两个JavaMailSender bean实例。 假设您将gmail和zoho配置放在application.yml中,您可以创建两个JavaMailSender实例,如下面的代码:
@Bean
public JavaMailSender getJavaMailSenderGmail() {
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
mailSender.setHost("smtp.gmail.com");
mailSender.setPort(587);
...other stuff of your config...
return mailSender;
}
@Bean
public JavaMailSender getJavaMailZoho() {
JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
mailSender.setHost("smtp.zoho.com");
...other stuff of your config...
return mailSender;
}
现在,在您的服务/控制器/ whatyouwant中,您可以自动装配您的bean。
@Autowired
@Qualifier("javaMailSenderGmail")
JavaMailSender gmail;
@Autowired
@Qualifier("javaMailSenderZoho")
JavaMailSender zoho;