springboot使用sendGird发送邮箱

我觉得我们了解一项技术首先要了解这项技术的背景,虽然这对我们的编程技术影响不大,但人生并不只是追求效率,也要追求品质
在这里插入图片描述

sendGird介绍

SendGrid 是一个电子邮件服务平台,可以帮助市场营销人员跟踪他们的电子邮件统计数据。致力于帮助公司管理事务性邮件,包括航运通知、简报和注册确认等。

SendGrid 发端于 API 经济,其电子邮件平台是数字客户通信的引力中心。2009年,三位创始人希望为用户带来更好的发送电子邮件的方式,于是创建了首个基于云计算的电子邮件通信平台。从那时起,SendGrid 就开始提供易于使用的 API 和可扩展的电子邮件服务。随着公司的客户群的多样化, SendGrid 还开发了广泛的电子邮件营销产品,用于强化营销人员轻松发送促销信息的能力,最近推出的专家服务(Expert Services)旨在帮助所有客户能够通过电子邮件建立更有效地沟通。

——来源:306百科

Sendgrid(https://sendgrid.com/),云邮件管理公司,是一个帮助企业用户管理、发送电子邮件的平台,该平台能够为用户电子邮件服务提供了安全可靠、可扩展的基础架构。SendGrid帮助企业用户处理邮件订阅、管理和反馈等事宜。同时SendGrid为用户提供分析服务,为用户提供关于电子邮件的跟踪请求、响应、垃圾邮件报告、无效电子邮件反馈、点击统计以及退订等诸多管理服务。

我们为什么要用sendGird

其实java中集成了发送邮件的工具(org.springframework.mail),虽然操作毕竟简单但是有很多局限性,比如无法发送附件,只能配单独的邮箱(smtp只能配一个)以至于发送邮箱只能用一种邮箱,所以导致qq邮箱无法给163发送邮件的局限性(举个例子)

而sendGird相当于一个代理商,我们把邮件发送到sendGird,让他来代替我们去给用户发送邮箱。

废话少说,上代码

springboot使用sendGird

首先我们在使用sendGird之前要在sendGird的官网申请apiKey和fromEmail(这个东西我没弄过,找公司相关人员要的所以我也不知道具体在哪弄,sendGird又是外国的,进官网又慢,我也懒得看了),官网地址:SendGrid

我们最好是在配置文件中加入apiKey和fromEmail(包不要导错了哦)

package com.rz.mobile.email;

import com.sendgrid.Method;
import com.sendgrid.Request;
import com.sendgrid.Response;
import com.sendgrid.SendGrid;
import com.sendgrid.helpers.mail.Mail;
import com.sendgrid.helpers.mail.objects.Content;
import com.sendgrid.helpers.mail.objects.Email;
import com.sendgrid.helpers.mail.objects.Personalization;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import java.io.IOException;

@Component
public class SendEmail{


    @Value("${spring.mail.username}")
    private String sendMailer;

    @Value("${twilio.apikey}")
    private String apikey;
    @Value("${twilio.fromemail}")
    private String fromEmail;

    /**
     *
     * @param emailMessage 邮箱内容
     * @param setTo 目标邮箱
     */
    public void sendSimpleMail(String emailMessage,String setTo){
        Email from = new Email(fromEmail);
        Mail mail = new Mail();
        Personalization personalization = new Personalization();
        /*
        如果发送多人的话可多次创建Email并add到Personalization
         */
        Email to = new Email(setTo);
        personalization.addTo(to);
        mail.addPersonalization(personalization);
        //邮件支持html格式,默认为text,text/html
        String type = "text/plain";

        Content content = new Content(type,emailMessage);
        mail.setFrom(from);//发送邮箱
        mail.setSubject("客餐预定审批邮件");//主题
        mail.addContent(content);//内容
        SendGrid sg = new SendGrid(apikey);

        Request request = new Request();
        try {
            request.setMethod(Method.POST);
            request.setEndpoint("mail/send");
            request.setBody(mail.build());
            Response response = sg.api(request);
        }catch (IOException e){
            e.printStackTrace();
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
SpringBoot中,可以使用JavaMail来实现发送邮件的功能。首先,需要导入spring-boot-starter-mail的依赖\[1\]。然后,在application.properties配置文件中填入连接邮件服务器、提供端口号、发送方邮件地址、发送方STMP授权码等信息\[2\]。接下来,可以使用SpringBoot提供的对象来使用邮件服务\[4\]。具体步骤如下: 1. 开启发送方邮件的STMP服务。 2. 加入Mail依赖,使得SpringBoot项目支持邮件服务。 3. 配置连接邮箱服务器以及STMP服务的信息。 4. 使用SpringBoot提供的对象来发送邮件。 以下是一个简单的示例代码,用于在SpringBoot登录后发送邮件: ```java // 导入相关的类 import org.springframework.beans.factory.annotation.Autowired; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.stereotype.Service; @Service public class EmailService { @Autowired private JavaMailSender mailSender; public void sendEmail(String to, String subject, String text) { SimpleMailMessage message = new SimpleMailMessage(); message.setTo(to); message.setSubject(subject); message.setText(text); mailSender.send(message); } } ``` 在登录成功后,调用`sendEmail`方法即可发送邮件。需要注意的是,需要在`application.properties`中配置好邮件服务器的相关信息\[2\]。 希望这个回答对您有帮助! #### 引用[.reference_title] - *1* [SpringBoot整合邮件发送](https://blog.csdn.net/Learning_xzj/article/details/125511069)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [SpringBoot 实现发送简单邮件](https://blog.csdn.net/rain67/article/details/126491348)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值