`

javaMail单发与群发(带附件)

    博客分类:
  • 2007
QQ 
阅读更多

import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import java.util.Properties;
import javax.mail.Session;
import javax.mail.internet.MimeMessage;
import javax.mail.Message;
import javax.mail.internet.MimeBodyPart;
import javax.activation.FileDataSource;
import javax.mail.Multipart;
import javax.mail.internet.MimeMultipart;
import javax.activation.DataHandler;

public class MsgsendService {
    private String host = "";
    private String user = "";
    private String password = "";

    public void setHost(String host) {
        this.host = host;
    }

    public void setAccount(String user, String password) {
        this.user = user;
        this.password = password;
    }

    public void Msgmultisend(String from, String to, String subject,
                             String content) {
        Properties props = new Properties();
        props.put("mail.smtp.host", host); //指定SMTP服务器
        props.put("mail.smtp.auth", "true"); //指定是否需要SMTP验证
        try {

            Session mailSession = Session.getInstance(props, null);
            mailSession.setDebug(true); //是否在控制台显示debug信息

            MimeMessage message = new MimeMessage(mailSession);
            message.setFrom(new InternetAddress(from)); //发件人

            message.setRecipients(Message.RecipientType.TO,
                                  InternetAddress.parse(to));
            message.setSubject(subject); //邮件主题
            message.setText(content); //邮件内容
            message.saveChanges();

            Transport transport = mailSession.getTransport("smtp");
            transport.connect(host, user, password);
            transport.sendMessage(message, message.getAllRecipients());
            transport.close();
        } catch (Exception e) {
            System.out.println(e);
        }
    }

    public void Msgmultisendfile(String from, String to, String subject,
                                 String content, String filename) {
        Properties props = new Properties();
        props.put("mail.smtp.host", host); //指定SMTP服务器
        props.put("mail.smtp.auth", "true"); //指定是否需要SMTP验证
        try {
            Session mailSession = Session.getInstance(props, null);

            mailSession.setDebug(true); //是否在控制台显示debug信息

            MimeMessage message = new MimeMessage(mailSession);

            MimeBodyPart textBodyPart = new MimeBodyPart();
            textBodyPart.setText(content);

            MimeBodyPart fileBodyPart = new MimeBodyPart();
            FileDataSource fds = new FileDataSource(filename);
            fileBodyPart.setDataHandler(new DataHandler(fds));
            fileBodyPart.setFileName(fds.getName());

            Multipart container = new MimeMultipart();
            container.addBodyPart(textBodyPart);
            container.addBodyPart(fileBodyPart);

            message.setSubject(subject);
            message.setContent(container);
            message.setFrom(new InternetAddress(from));
            message.setRecipients(Message.RecipientType.TO,
                                  InternetAddress.parse(to));
            message.saveChanges();
            Transport transport = mailSession.getTransport("smtp");
            transport.connect(host, user, password);
            transport.sendMessage(message, message.getAllRecipients());
            transport.close();
        } catch (Exception e) {
            System.out.println(e);
        }
    }


    public void Msgsend(String from, String to, String subject, String content) {
        Properties props = new Properties();
        props.put("mail.smtp.host", host); //指定SMTP服务器
        props.put("mail.smtp.auth", "true"); //指定是否需要SMTP验证
        try {
            Session mailSession = Session.getDefaultInstance(props);

            mailSession.setDebug(true); //是否在控制台显示debug信息

            Message message = new MimeMessage(mailSession);
            message.setFrom(new InternetAddress(from)); //发件人
            message.addRecipient(Message.RecipientType.TO,
                                 new InternetAddress(to)); //收件人

            message.setSubject(subject); //邮件主题
            message.setText(content); //邮件内容
            message.saveChanges();

            Transport transport = mailSession.getTransport("smtp");
            transport.connect(host, user, password);
            transport.sendMessage(message, message.getAllRecipients());
            transport.close();
        } catch (Exception e) {
            System.out.println(e);
        }

    }


    public void Msgsendfile(String from, String to, String subject,
                            String content, String filename) {
        Properties props = new Properties();
        props.put("mail.smtp.host", host); //指定SMTP服务器
        props.put("mail.smtp.auth", "true"); //指定是否需要SMTP验证
        try {
            Session mailSession = Session.getDefaultInstance(props);

            mailSession.setDebug(true); //是否在控制台显示debug信息

            MimeMessage message = new MimeMessage(mailSession);

            MimeBodyPart textBodyPart = new MimeBodyPart();
            textBodyPart.setText(content);

            MimeBodyPart fileBodyPart = new MimeBodyPart();
            FileDataSource fds = new FileDataSource(filename);
            fileBodyPart.setDataHandler(new DataHandler(fds));
            fileBodyPart.setFileName(fds.getName());

            Multipart container = new MimeMultipart();
            container.addBodyPart(textBodyPart);
            container.addBodyPart(fileBodyPart);

            message.setSubject(subject);
            message.setContent(container);
            message.setFrom(new InternetAddress(from));
            message.addRecipient(Message.RecipientType.TO,
                                 new InternetAddress(to));
            message.saveChanges();
            Transport transport = mailSession.getTransport("smtp");
            transport.connect(host, user, password);
            transport.sendMessage(message, message.getAllRecipients());
            transport.close();
        } catch (Exception e) {
            System.out.println(e);
        }
    }


    public static void main(String args[]) {
        MsgsendService sm = new MsgsendService();

        sm.setHost("smtp.163.com"); //指定要使用的邮件服务器
        sm.setAccount("txy_821", "*********"); //指定帐号和密码

        sm.Msgmultisendfile("txy_821@163.com",
                            "txy_821@163.com,396668361@qq.com",
                            "mose测试ing", "无语!",
                            "C:\\Documents and Settings\\mos\\桌面\\1233.jpg");
    }

}

分享到:
评论

相关推荐

    javaMail实现单发/群发邮件操作

    在这个项目中,我们将会探讨如何使用 JavaMail 实现单发和群发邮件的操作。 首先,为了使用 JavaMail 发送邮件,我们需要引入相关的依赖。在 Maven 项目中,可以在 `pom.xml` 文件中添加以下依赖: ```xml ...

    javamail邮件群发、单发_邮件发送

    JavaMail 是一个强大的开源库,用于在 Java 应用程序中处理电子邮件的发送和接收。它提供了丰富的 API,使得开发者可以方便地...通过这个简单的示例,你应该已经掌握了使用 JavaMail 进行邮件群发和单发的核心概念。

    java邮件发送(单发,群发,附件,抄送)

    在这个例子中,我们主要关注JavaMail如何实现邮件的单发、群发、添加附件以及抄送功能。 1. **JavaMail API简介** JavaMail API提供了一系列接口和类,如`Session`、`Message`、`MimeMessage`、`Transport`等,...

    javamail实现群发邮件

    在本文中,我们将深入探讨如何使用 JavaMail 实现群发邮件的功能。 首先,要使用 JavaMail 发送邮件,我们需要添加其依赖到项目中。如果你使用的是 Maven,可以在 `pom.xml` 文件中添加以下依赖: ```xml ...

    javamail群发邮件源码

    1. **JavaMail API**:JavaMail API 是一组用于访问邮件服务器的接口和类,它提供了与各种邮件协议(如SMTP、POP3、IMAP)交互的能力。开发者可以利用这个库创建发送和接收邮件的应用程序。 2. **SMTP 协议**:简单...

    Java实现发送邮件

    例如,以下代码演示了如何发送带有HTML正文和附件的邮件: ```java Multipart mp = new MimeMultipart(); BodyPart messagePart = new MimeBodyPart(); messagePart.setContent("<html><body>欢迎!</h1><p>这是...

    JAVA实现邮件群发

    对于更复杂的需求,比如添加附件、使用HTML格式的邮件内容或者发送带附件的邮件,可以利用`MimeMultipart`和`MimeBodyPart`类来构造复杂的邮件结构。 在提供的“实例47”中,可能包含了实现上述过程的具体代码。...

    用jsp实现邮件群发

    在邮件群发的场景下,JSP将负责构建邮件内容并调用JavaMail API进行邮件发送。 JavaMail API是Java平台用于处理电子邮件的标准API,它提供了创建、发送和接收邮件的功能。要使用JavaMail,我们需要在项目中引入相关...

    java邮件群发代码

    本篇将详细介绍一个简单的Java邮件群发代码,帮助理解如何使用JavaMail API来实现这个功能。 首先,我们来看核心类`Mailer`,它封装了邮件发送的相关配置和逻辑。`Mailer`类包含了以下主要属性: 1. `Session`对象...

    java-Mail 发邮件实例

    通过上述步骤和方法,可以构建出功能完善的邮件系统,无论是简单的文本邮件,还是复杂的带附件的群发邮件,都能够轻松应对。学习和掌握JavaMail API的使用,对于任何需要进行邮件交互的Java应用都是至关重要的。

    java邮件代码(详细)

    本教程将深入探讨如何使用Java实现邮件发送功能,包括单发文字邮件、上传附件以及群发邮件。 首先,我们需要引入JavaMail API库,这通常通过添加以下Maven依赖到项目中来实现: ```xml <groupId>...

    一个很好用的邮件发送项目

    使用MimeMessage对象可以创建包含各种头部信息(如发件人、收件人、主题和日期)及邮件正文的邮件。我们还可以添加附件、设置HTML格式的内容或者使用MIME多部分结构来组合文本和图像。 5. **连接与发送**: 通过...

    java实现邮件发送功能

    在Java编程语言中,实现邮件发送功能主要依赖于JavaMail API。这个API提供了一系列的类和接口,使得开发者能够方便地构建电子邮件并将其发送到指定的SMTP(简单邮件传输协议)服务器。邮件发送功能不仅包括单个收件...

    Android课程设计报告

    - **Address**:表示邮件中的地址对象(如发件人、收件人等)。 - **Authenticator**:用于身份验证的抽象类。 - **Transport**:负责实际的消息传输。 - **Store**:表示邮件服务器的存储空间。 - **Folder**...

    ZoMail:邮件发件人工具

    JavaMail提供了丰富的接口和类,使得ZoMail能够连接到SMTP服务器,验证凭据,设置邮件头信息(如发件人、收件人、主题等),以及发送带有附件的邮件。 现在,让我们更深入地探讨ZoMail的核心功能: - **邮件模板**...

Global site tag (gtag.js) - Google Analytics