applicationContext.xml
<beans>
<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
<property name="host" value="smtp.163.com"/>
<property name="port" value="465"/>
<property name="username" value="xxxxx@163.com"/>
<property name="password" value="xxxxxx"/>
<property name="javaMailProperties">
<props>
<prop key="mail.smtp.auth">true</prop>
<prop key="mail.smtp.ssl.enable">true</prop>
<prop key="mail.smtp.socketFactory.class">javax.net.ssl.SSLSocketFactory</prop>
<prop key="mail.smtp.timeout">25000</prop>
<prop key="mail.smtp.socketFactory.fallback">false</prop>
<prop key="mail.smtp.ssl.protocols">TLSv1.2</prop>
</props>
</property>
</bean>
</beans>
EmailUtils.java
package net.zkbc.admin.mgt.util;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.stereotype.Component;
@Component
public class EmailUtils {
@Autowired
private JavaMailSender mailSender;
// 发件人自动取自 spring.mail.username
public void sendTextMail(String to, String subject, String content) {
SimpleMailMessage message = new SimpleMailMessage();
message.setTo(to);
message.setSubject(subject);
message.setText(content);
// 可选:指定发件人(不指定则用配置的username)
message.setFrom("xxxx@163.com");
mailSender.send(message);
}
}
service中调用
@Autowired
JavaMailSender mailSender;
@Test
public void testSendMail() {
SimpleMailMessage message = new SimpleMailMessage();
message.setFrom("ckkazxb@163.com");
message.setTo("994028591@qq.com"); // 改成你的收件人
message.setSubject("测试邮件");
message.setText("这是一封测试邮件。");
mailSender.send(message);
}
注意使用的 jdk版本必须是>jdk 1.8.0_161 以上的版本 .
这里使用的是jdk1.8.0_202.jdk
jdk下载地址:Java Archive Downloads - Java SE 8
ECS中安全组规则中,出方向添加465的端口。