spring boot hutool整合email

hutool email

内容介绍

本文介绍 两种方式发送email文件

  1. spring boot 整合 email 发送文件
  2. spring boot 利用hutool 整合email 发送文件

前提

发送email文件需要开启pop
spring boot hutool整合email_第1张图片

spring boot 整合email 发送文件

导入依赖



    org.springframework.boot
    spring-boot-starter-mail

配置文件

spring:
    mail:
        default-encoding: utf-8
        host: smtp.aliyun.com
        username: 邮箱账号
        password:  密码

发送邮件测试

package com.example.easypoi.rest;

import lombok.RequiredArgsConstructor;
import org.springframework.mail.javamail.JavaMailSender;
import org.springframework.mail.javamail.MimeMessageHelper;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;
import java.util.List;

/**
 * @author ccubee
 * @since 2021/12/31 14:37
 */
@RestController
@RequestMapping("poi")
@RequiredArgsConstructor
public class ExcelRest {
    private final JavaMailSender javaMailSender;

    @GetMapping("bootSend")
    public String bootSend() {
        MimeMessage message = javaMailSender.createMimeMessage();
        MimeMessageHelper messageHelper = null;
        try {
            messageHelper = new MimeMessageHelper(message, true, CharsetUtil.UTF_8);
            messageHelper.setTo("接收地址@126.com");
            messageHelper.setFrom("发送地址@aliyun.com");
            messageHelper.setSubject("subject");
    //        messageHelper.addAttachment( "book.xls", file);
            // true 表示启动HTML格式的邮件
            messageHelper.setText("

测试

", true); javaMailSender.send(message); } catch (MessagingException e) { e.printStackTrace(); } return "成功"; } }

spring boot 利用 hutool 整合email 发送email文件

导入依赖

Hutool对所有第三方都是可选依赖,因此在使用MailUtil时需要自行引入第三方依赖。
旧版


    com.sun.mail
    javax.mail
    1.6.2

新版


  com.sun.mail
  jakarta.mail
  1.6.7

也可以直接daoru spring boot email依赖

  

    org.springframework.boot
    spring-boot-starter-mail

配置文件

在classpath(在标准Maven项目中为src/main/resources)的config目录下新建mail.setting文件,最小配置内容如下,在此配置下,smtp服务器和用户名都将通过from参数识别:
form user都是发送文件地址
阿里云邮箱的 user是邮箱的完整地址,即 [email protected]
spring boot hutool整合email_第2张图片

# 邮件服务器的SMTP地址,可选,默认为smtp.<发件人邮箱后缀>
host = smtp.yeah.net
# 邮件服务器的SMTP端口,可选,默认25
port = 25
# 发件人(必须正确,否则发送失败)
from = [email protected]
# 用户名,默认为发件人邮箱前缀
user = hutool
# 密码(注意,某些邮箱需要为SMTP服务单独设置授权码,详情查看相关帮助)
pass = q1w2e3

测试

@GetMapping("testEmail")
public String send() {
    MailUtil.send("[email protected]", "测试", "邮件来自Hutool测试", false);
    return "ok";
}

也可以发送文件 ,参考 hutool 文档即可

你可能感兴趣的:(spring,boot,java,后端)