用java编写Sendgrid电子邮件教程与实例

357 阅读2分钟

Sendgrid是一家SASS公司,它提供了一个事务性的电子邮件供应商,它被托管在云端,可以集成到任何应用程序中来发送电子邮件。

在本教程中,你学到了如何创建一个Java项目,并添加SendGrid的依赖性,以及如何使用SendGrid发送电子邮件的例子。

使用Maven创建Java项目

Maven有不同的原型,用于为网络和标准java项目生成不同的应用程序。

mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4

它创建了一个java示例模块项目。

接下来在pom.xml中添加sendgrid maven jar依赖项,如下图所示

<dependency>
      <groupId>com.sendgrid</groupId>
      <artifactId>sendgrid-java</artifactId>
      <version>4.7.2</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.7.30</version>
      <scope>test</scope>
    </dependency>

接下来,使用mvn clean install命令安装依赖项。这将从远程maven仓库安装项目的依赖性,并将其下载到本地仓库。

使用sendgrid发送电子邮件的java代码示例

在这个例子中,以下是在java代码中配置SendGrid API的步骤。

  • fromto 字段创建电子邮件对象。
  • 用内容类型(text/Html)和HTML内容初始化内容对象。
  • 创建com.sendgrid.helpers.mail.Mail对象,包括发件人、收件人、主题和内容字段。
  • 使用SendGrid仪表板上的API密钥创建SendGrid对象
  • 创建具有Method(Method.POST)和endPoint="mail/send "和body的请求对象。
  • 调用SendGrid API方法请求对象,该对象进行HTTP API调用。
  • Sendgrid系统会向配置好的收件人发送一封邮件。
  • 你可以使用Response对象来检查你的邮件状态。

下面是一个代码Sendgrid API for sending email in java example

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 java.io.IOException;

public class SendEmail {
    final private String sendGridApi = "";

    public static void main(String[] args) throws IOException {

            Email from = new Email("");
            Email to = new Email(""); // use your own email address here

            String subject = "This is test subject";
            Content content = new Content("text/html", "Test Content");

            Mail mail = new Mail(from, subject, to, content);

            SendGrid sg = new SendGrid(System.getenv("SENDGRID_API_KEY"));
            Request request = new Request();

            request.setMethod(Method.POST);
            request.setEndpoint("mail/send");
            request.setBody(mail.build());

            Response response = sg.api(request);

            System.out.println(response.getStatusCode());
            System.out.println(response.getHeaders());
            System.out.println(response.getBody());
        }

    }

总结

你学会了如何创建一个java应用程序,添加SendGrid的maven依赖项,以及使用java编程发送电子邮件的java代码。