在Java中实现邮件发送功能是一项常见的任务,比如注册验证、通知提醒等。Java提供了强大的邮件发送API——JavaMail,能够方便地实现这一功能。
JavaMail简介
JavaMail是一个用于发送和接收邮件的API。它提供了一个独立于平台的、基于Java的邮件解决方案。我们可以使用JavaMail发送电子邮件,包括文本邮件、HTML邮件以及带附件的邮件。
配置JavaMail依赖
首先,需要在项目中添加JavaMail的依赖。假设我们使用Maven进行依赖管理,只需在pom.xml中添加以下依赖:
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
</dependency>
配置邮件服务器
发送邮件需要一个邮件服务器(SMTP服务器)。常用的邮件服务器包括Gmail、QQ邮箱等。在这里,我们以QQ为例,展示如何配置邮件服务器。

开启服务:获取到授权码,在下面示例中使用授权码作为password。
发送示例
发送简单文本邮件
下面是一个发送简单文本邮件的例子:
package cn.harry.utils;
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;
/**
* @author harry
* @公众号 Harry技术
*/
public class SimpleEmailSender {
public static void main(String[] args) {
System.setProperty("javax.net.debug", "ssl,handshake");
// 邮件服务器配置
String host = "smtp.qq.com";
final String user = "xxxx@qq.com"; // 发件人邮箱
final String password = "xxxxx"; // 发件人密码
// 收件人邮箱
String to = "xxx@qq.com";
// 配置属性
Properties props = new Properties();
props.put("mail.smtp.host", host);
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.port", "587");
props.put("mail.smtp.starttls.enable", "true");
// 获取默认session对象
Session session = Session.getInstance(props, new javax.mail.Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
&nb

最低0.47元/天 解锁文章
2991

被折叠的 条评论
为什么被折叠?



