需求是使用Java写一个简单的邮箱发送程序。
注意需要到QQ邮箱的设置-账户中开启服务。

package org.example;
import org.apache.commons.mail.Email;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.SimpleEmail;
public class Main {
    public static void main(String[] args) {
        try{
            Email email=new SimpleEmail();
            String username="2351925363@qq.com";
            String receiver="2351925363@qq.com";
            String password="QQ邮箱验证码";
            String subject="编程练习4";
            String message="这是2021155015-叶茂林自编写邮件发送程序,从邮箱2351925363@qq.com发送的邮件,请查收";
            email.setHostName("smtp.qq.com");
            email.setSmtpPort(587);
            email.setAuthentication(username,password);
            email.setFrom(username);
            email.addTo(receiver);
            email.setSubject(subject);
            email.setMsg(message);
            email.send();
        }catch (EmailException e){
            e.printStackTrace();
        }
    }
}段代码是一个简单的Java程序,用于通过邮件发送消息。让我们逐行分析它:
-  package org.example;:这个代码文件位于org.example包中。
-  导入了三个类库: - org.apache.commons.mail.Email:用于表示电子邮件对象。
- org.apache.commons.mail.EmailException:用于处理邮件相关的异常。
- org.apache.commons.mail.SimpleEmail:用于创建简单的邮件对象。
 
-  创建了一个名为 Main的公共类。
-  在 main方法中进行邮件发送操作:- 创建一个SimpleEmail对象,并将其赋值给email变量。
- 设置发件人的邮箱用户名、密码、主机名和端口号。
- 设置收件人的邮箱地址。
- 设置邮件的主题和内容。
- 调用email.send()方法发送邮件。
 
- 创建一个
-  使用 try-catch块来捕获可能抛出的EmailException异常,并在出现异常时打印堆栈跟踪信息。
总体来说,这段代码使用了Apache Commons Email库来实现邮件发送功能。需要注意的是,代码中直接暴露了发件人的邮箱用户名和密码,这不安全。在实际应用中,建议将敏感信息存储在安全的方式下,例如配置文件或环境变量中。



















