A.12 springboot email

Spring boot 发送邮件

Spring提供了非常好用的JavaMailSender接口实现邮件发送。在Spring Boot的Starter模块中也为此提供了自动化配置。下面通过实例看看如何在Spring Boot中使用JavaMailSender发送邮件

在pom.xml中导入依赖

<dependency> 
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

在application.properties中配置相应的内容

# 设置邮箱主机
spring.mail.host=smtp.163.cn
# 设置用户名
spring.mail.username=xxx@163.com
# 设置密码
spring.mail.password=****
# 设置是否需要认证,如果为true,那么用户名和密码就必须的,
spring.mail.properties.mail.smtp.auth=true

编码测试

@Service
public class SendMailService {
        @Autowired
        private JavaMailSender mailSender;
        /**
        * 发送邮件
        * @param mailTo 接受者邮箱
        * @param mailFrom   发送者邮箱
        * @param subject    邮件主题
        * @param text   邮件内容
        */  
        public void sendMail(String mailTo, String mailFrom, String subject, String text) {
            MimeMessage mimeMessage = mailSender.createMimeMessage();
            try {
                MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
                // 发送者
                helper.setFrom(mailFrom);
                // 接收者
                helper.setTo(mailTo);
                // 邮件主题
                helper.setSubject(subject);
                // 邮件内容,true表示识别html
                helper.setText(text, true);
                // 发送邮件
                mailSender.send(mimeMessage);
            } catch (MessagingException e) {
                e.printStackTrace();
            }
            System.out.println("邮件已发送");
        }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。