使用spring发送邮件,部署ECS服务器

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的端口。

相关推荐
sunshine22 girl23 分钟前
Java学习七 Java 项目实战2-注册业务
java·学习
省钱兄--zs1 小时前
北京24小时自助健身房系统软件开发实战:从架构设计到部署指南
java·数据仓库·spring boot·小程序·需求分析
youdexiang1 小时前
Android录音软件时间关键词检索功能分析
java·人工智能
sunshine22 girl2 小时前
Java学习七 Java 项目实战1-项目创建和主页面搭建
java·开发语言·学习
code2cat2 小时前
Java进阶篇之AtomicStampedReference:引用回到原值,版本戳仍能记住变化
java·cas·并发编程·aba
huainingning3 小时前
RJ SW Console口忘记密码处理方法
linux·运维·服务器
布裘3 小时前
【银河麒麟】桌面系统循环登录,无法进入桌面?
linux·运维·服务器
慧都小项3 小时前
程序到了Linux才出错?用CLion把调试接到目标环境
linux·运维·服务器
泡茶喝茶写代码4 小时前
A股量化数据工程:从 REST 接口到策略信号(第 8 篇):成长能力因子:营收与利润增速
java·python·股票数据api·股票数据api接口·股票量化数据api·股票量化数据接口·股票数据api数据
\光辉岁月/4 小时前
7.javase-面向对象
java·开发语言