`

简单邮件发送测试

阅读更多
import java.util.Date;
import java.util.Properties;

import javax.mail.Address;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

/**
 * 常规JavaMail 邮件发送实用类
 */
public final class MailUtil {
    // 邮件发送者地址
    private static final String SenderEmailAddr = "xxx@xxx.com";

    // 邮件发送者邮箱用户
    private static final String SMTPUserName = = "xxx@xxx.com";
    
    // 邮件发送者邮箱密码
    private static final String SMTPPassword = "xxxxxx";

    // 邮件发送者邮箱SMTP服务器
    private static final String SMTPServerName = "smtp.gmail.com";

    // 传输类型
    private static final String TransportType = "smtp";

    // 属性
    private static Properties props;

    /**
     * 私有构造函数,防止外界新建本实用类的实例,因为直接使用MailUtil.sendMail发送邮件即可
     *
     */
    private MailUtil() {

    }

    /**
     * 静态构造器
     */
    static {
        MailUtil.props = new Properties();

        // 存储发送邮件服务器的信息
        MailUtil.props.put("mail.smtp.host", MailUtil.SMTPServerName);
        // 同时通过验证
        MailUtil.props.put("mail.smtp.auth", "true");
        MailUtil.props.put("mail.smtp.starttls.enable","true");
    }

    /**
     * 发送邮件
     * @param emailAddr:收信人邮件地址
     * @param mailTitle:邮件标题
     * @param mailConcept:邮件内容
     */
    public static void sendMail(String emailAddr, String mailTitle,
            String mailConcept) {
        // 根据属性新建一个邮件会话,null参数是一种Authenticator(验证程序) 对象
        Session s = Session.getInstance(MailUtil.props, null);

        // 设置调试标志,要查看经过邮件服务器邮件命令,可以用该方法
        s.setDebug(false);
        
        // 由邮件会话新建一个消息对象
        Message message = new MimeMessage(s);
        try {
            // 设置发件人
            Address from = new InternetAddress(MailUtil.SenderEmailAddr);
            message.setFrom(from);

            // 设置收件人
            Address to = new InternetAddress(emailAddr);
            message.setRecipient(Message.RecipientType.TO, to);

            // 设置主题
            message.setSubject(mailTitle);
            // 设置信件内容
            message.setText(mailConcept);
            // 设置发信时间
            message.setSentDate(new Date());
            // 存储邮件信息
            message.saveChanges();

            Transport transport = s.getTransport(MailUtil.TransportType);
            // 要填入你的用户名和密码;
            transport.connect(MailUtil.SMTPServerName, MailUtil.SMTPUserName,
                    MailUtil.SMTPPassword);

            // 发送邮件,其中第二个参数是所有已设好的收件人地址
            transport.sendMessage(message, message.getAllRecipients());
            transport.close();

            System.out.println("发送邮件,邮件地址:" + emailAddr + " 标题:" + mailTitle
                    + " 内容:" + mailConcept + "成功!");
        } catch (Exception e) {
            System.out.println(e.getMessage());
            System.out.println("发送邮件,邮件地址:" + emailAddr + " 标题:" + mailTitle
                    + " 内容:" + mailConcept + "失败! 原因是" + e.getMessage());
        }
    }

    /**
     * 测试邮件发送情况
     * @param args
     */
    public static void main(String[] args){
        MailUtil.sendMail("xxx@139.com", "test2", "xx的javaMail测试");
        System.out.print("程序已执行完");
    }
} 

 

分享到:
评论

相关推荐

    SMTP测试邮件发送工具

    4. **发送测试邮件**:发送一封简单的测试邮件到自己的邮箱,检查是否收到。 5. **分析结果**:根据工具返回的反馈信息,解决出现的任何问题。 总的来说,SMTP测试邮件发送工具是IT人员、系统管理员和普通用户排查...

    简单Java邮件发送 Java实现邮件发送

    下面是一个简单的Java邮件发送示例,展示如何使用JavaMail API发送邮件: ```java import javax.mail.*; import javax.mail.internet.*; public class SimpleJavaMail { public static void main(String[] args)...

    java邮件发送完整测试程序

    2.按照里面的文件“邮件发送使用说明”进行简单的修改。 3.把工程放到tomcat/jboss/weblogic/jetty/...或者随便什么服务器里面运行。OK! 还有什么不懂,可以联系我QQ(“邮件发送使用说明”里面有)。

    Python 邮件发送测试运维报警必备 - 笔记.docx

    Python 邮件发送测试运维报警必备笔记 本笔记主要介绍了使用 Python 实现邮件发送测试运维报警的相关知识点,涵盖了 SMTP 介绍、QQ 环境设置、MIME 操作、发送各种文档和图片等内容。 1. SMTP 介绍 SMTP(Simple ...

    C#邮件发送测试

    在本项目“C#邮件发送测试”中,我们关注的是如何利用C#语言实现邮件发送的功能。邮件功能在现代应用程序中十分常见,用于发送通知、确认信息或者客户服务等。 在C#中,我们可以使用System.Net.Mail命名空间中的类...

    C#邮件发送的小软件

    本项目“C#邮件发送的小软件”是一个基于C#编写的简单邮件发送测试工具,它允许用户通过代码实现电子邮件的发送功能。这个小软件是在Visual Studio 2008(VS2008)开发环境中构建的,这意味着它利用了.NET Framework...

    简单邮件发送器

    "简单邮件发送器"是一个典型的示例,它利用特定的技术来实现邮件的发送功能。在这个案例中,提到的关键组件是"CDONTS",这是一个在早期版本的Windows操作系统,如Windows 2000 Server中提供的邮件传输服务。 CDONTS...

    VC简单邮件发送代码

    【VC简单邮件发送代码】是基于Visual C++ 6.0开发的一个小型应用程序,它主要用于实现基础的电子邮件发送功能。这个程序的核心在于利用SMTP(Simple Mail Transfer Protocol)协议,这是一种互联网标准,用于从一个...

    java 邮件发送测试

    JavaMail API是一个开源库,允许开发者通过SMTP(简单邮件传输协议)或其他邮件协议发送邮件。在你提供的信息中,`mail.jar`是JavaMail的核心库,而`commons-email-1.2.jar`是Apache Commons Email库,它提供了更...

    SMTP简单邮件发送开发实例.

    本实例将深入探讨如何利用SMTP进行简单的邮件发送开发。 一、SMTP工作原理 SMTP基于TCP/IP协议族,通常使用25号端口进行通信。邮件发送的过程分为以下几个步骤: 1. 客户端与SMTP服务器建立连接。 2. 客户端发送...

    php邮件发送测试类

    以上就是一个简单的PHP邮件发送测试类的实现。请注意,实际应用中可能需要根据你的SMTP服务器配置和邮件需求进行相应的调整。在生产环境中,确保使用正确的SMTP服务器信息,以避免邮件发送失败。同时,对于大规模...

    简单邮件发送控制系统.zip

    本篇文章将详细解析名为“简单邮件发送控制系统”的项目,主要基于提供的压缩包文件“crazy_email-master”。 首先,我们要了解邮件发送控制系统的基本原理。邮件系统通常包括客户端和服务器两部分,客户端用于编写...

    Winform测试发送邮件

    smtpClient类:允许应用程序使用简单邮件传输协议 (SMTP) 发送电子邮件。 MailAddress类:MailAddress类表示电子邮件的地址。该类结合SmtpClient类或MailMessage类使用,其实例存储了电子邮件的地址信息。 ...

    Spring Boot整合邮件发送并保存历史发送邮箱

    Spring Boot整合邮件发送并保存历史发送邮箱 项目描述 项目主要是使用 Spring Boot 发送邮件,主要的技术点有: 1、Spring Boot +mybatis的整合 2、Spring Boot项目中jsp的使用 3、Spring Boot 发送邮件...

    电子邮件发送.rar

    电子邮件发送在IT行业中是一项基础但至关重要的技术,尤其在企业通信和自动化流程中扮演着重要角色。本资源“电子邮件发送.rar”包含与ASP.NET相关的源码,提供了两种不同的方法来实现电子邮件的发送:SMTP(Simple ...

    java简单邮件发送

    以下是一个简单的Java邮件发送示例,以136邮箱为例: ```java import javax.mail.*; import javax.mail.internet.*; public class SimpleEmailSender { public static void main(String[] args) { String to = ...

    邮件发送依赖包

    例如,`smtp4dev.jar`是用于测试目的的SMTP服务器,它可以帮助开发者在本地环境调试邮件发送代码,而无需实际发送邮件。`javamimecodec.jar`则提供了MIME编码和解码的工具,这对于处理HTML内容、附件和其他非文本...

    java简单--邮件发送.txt

    根据提供的文件信息,本文将详细解释Java中如何实现简单的邮件发送功能。这涉及到Java Mail API的使用、必要的配置文件设置以及具体的代码实现等知识点。 ### Java邮件发送简介 Java提供了强大的邮件处理API——...

    N种邮件发送

    1. **SMTP协议**:Simple Mail Transfer Protocol(简单邮件传输协议)是互联网上用于发送电子邮件的标准协议。Java中的`java.mail`库利用SMTP协议与邮件服务器交互,完成邮件的发送。 2. **JavaMail API**:...

    android邮件发送几种方式

    在开发环境中,有些开发者会使用名为ICEMAIL的Android Studio插件,它提供了一种便捷的方式在调试时发送测试邮件,但这并不适用于实际应用发布。 以上就是Android中常用的几种邮件发送方式。根据实际需求和应用...

Global site tag (gtag.js) - Google Analytics