java实现发送邮件功能(可以添加附件)

记录一下在java中发送邮件的实现方式,下面这个工具类是根据在网上查阅的资料自己整理出来的。

类中只有两个方法: 1.第一个就是普通的发送文本内容邮件的方法。 2.第二个是能发送附件邮件的方法。如果还想实现更复杂的可以自行百度。

一、pom依赖

1.maven项目

<dependencies>
    <!-- JavaMail API -->
    <dependency>
        <groupId>com.sun.mail</groupId>
        <artifactId>javax.mail</artifactId>
        <version>1.6.2</version>
    </dependency>
    
    <!-- JavaBeans Activation Framework (JAF) -->
    <dependency>
        <groupId>javax.activation</groupId>
        <artifactId>activation</artifactId>
        <version>1.1.1</version>
    </dependency>
</dependencies>

上述依赖项包含了JavaMail API和JavaBeans Activation Framework(JAF)。JavaMail API用于发送和接收电子邮件,而JAF用于处理邮件附件的类型和编码。

2.SpringBoot项目

<dependencies>
    <!-- Spring Boot Mail Starter -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-mail</artifactId>
    </dependency>
</dependencies>

要在Spring Boot项目中发送电子邮件,你可以使用Spring Boot提供的spring-boot-starter-mail依赖项。该依赖项集成了JavaMail API,并提供了更方便的配置和使用方式。 上述依赖项将自动引入Spring Boot Mail Starter,并解决其所需的传递依赖关系。它包含了JavaMail API以及Spring Boot中发送电子邮件所需的其他组件。

二、代码

另外,邮件的内容(content)也可以通过拼接html代码来发送文本内容格式是表格的邮件,如下:

content = "<html><head><head><body><table>" +
          "<tr>" + 
          "<td>第一个单元格</td>" +
          "<td>第二个单元格</td>" +
          "</tr>" + 
          "</table></body></html>"

按上边这个content发送的邮件内容将展示为一个表格。

好了,有不同意见的欢迎留言哈~

经验分享 程序员 微信小程序 职场和发展