`

邮件发送器

    博客分类:
  • java
阅读更多

public class EmailSender {

    private static final String charset = "GBK";

    private static final String defaultMimetype = "text/plain";

 

    public static void main(String[] args) throws Exception {

    EmailSender.send(new String[]{"hsiangyu@gmail.com"}, "邮件测试xx", "<b>Hsiangyu的邮件测试</b>",null , "text/html");

    }

    /**

     * 发送邮件

     * @param receiver 收件人

     * @param subject 标题

     * @param mailContent 邮件内容

     * @param mimetype 内容类型 默认为text/plain,如果要发送HTML内容,应设置为text/html

     */

    public static void send(String receiver, String subject, String mailContent, String mimetype) {

    send(new String[]{receiver}, subject, mailContent, mimetype);

    }

    /**

     * 发送邮件

     * @param receivers 收件人

     * @param subject 标题

     * @param mailContent 邮件内容

     * @param mimetype 内容类型 默认为text/plain,如果要发送HTML内容,应设置为text/html

     */

    public static void send(String[] receivers, String subject, String mailContent, String mimetype) {

    send(receivers, subject, mailContent, null, mimetype);

    }

    /**

     * 发送邮件

     * @param receivers 收件人

     * @param subject 标题

     * @param mailContent 邮件内容

     * @param attachements 附件

     * @param mimetype 内容类型 默认为text/plain,如果要发送HTML内容,应设置为text/html

     */

    public static void send(String[] receivers, String subject, String mailContent, File[] attachements, String mimetype) {

        Properties props = new Properties();

        props.put("mail.smtp.host", "smtp.126.com");//Smtp服务器地址

        props.put("mail.smtp.auth", "true");//需要校验

        Session session = Session.getDefaultInstance(props, new Authenticator() {

            protected PasswordAuthentication getPasswordAuthentication() {

                return new PasswordAuthentication("XXXXXXXX@126.com",XXXXXXXX");//登录用户名/密码

            }

        });

        session.setDebug(true);

        try {

            MimeMessage mimeMessage = new MimeMessage(session);

            mimeMessage.setFrom(new InternetAddress("XXXXXXXX@126.com"));//发件人邮件

 

            InternetAddress[] toAddress = new InternetAddress[receivers.length];

            for (int i=0; i<receivers.length; i++) {

                toAddress[i] = new InternetAddress(receivers[i]);

            }

            mimeMessage.setRecipients(Message.RecipientType.TO, toAddress);//收件人邮件

            mimeMessage.setSubject(subject, charset);

 

            Multipart multipart = new MimeMultipart();

            //正文

            MimeBodyPart body = new MimeBodyPart();

           // body.setText(message, charset);不支持html

            body.setContent(mailContent, (mimetype!=null && !"".equals(mimetype) ? mimetype : defaultMimetype)+ ";charset="+ charset);

            multipart.addBodyPart(body);//发件内容

            //附件

            if(attachements!=null){

           for (File attachement : attachements) {

               MimeBodyPart attache = new MimeBodyPart();

              //ByteArrayDataSource bads = new ByteArrayDataSource(byte[],"application/x-any");

               attache.setDataHandler(new DataHandler(new FileDataSource(attachement)));

               String fileName = getLastName(attachement.getName());

               attache.setFileName(MimeUtility.encodeText(fileName, charset, null));

               multipart.addBodyPart(attache);

           }

            }

            mimeMessage.setContent(multipart);

           // SimpleDateFormat formcat = new SimpleDateFormat("yyyy-MM-dd");            

            mimeMessage.setSentDate(new Date());//formcat.parse("2011-5-23")

            Transport.send(mimeMessage);            

        } catch (Exception e) {

        e.printStackTrace();

        }

    }

 

    private static String getLastName(String fileName) {

        int pos = fileName.lastIndexOf("\\");

        if (pos > -1) {

            fileName = fileName.substring(pos + 1);

        }

        pos = fileName.lastIndexOf("/");

        if (pos > -1) {

            fileName = fileName.substring(pos + 1);

        }

        return fileName;

    }

}


分享到:
评论

相关推荐

    Android邮件发送器

    在Android平台上开发一个邮件发送器应用,主要涉及的是利用JavaMail API进行邮件处理。JavaMail API是一个开源的、跨平台的API,它提供了一系列接口和类来处理邮件发送和接收。下面将详细介绍如何在Android中实现...

    邮件发送器 vc++编写的源代码

    标题中的“邮件发送器”指的是一个使用VC++编程语言编写的程序,它的主要功能是发送电子邮件。VC++,全称Visual C++,是微软开发的一种集成开发环境,用于创建Windows平台上的应用程序,包括控制台应用、图形用户...

    邮件发送器的易语言源代码

    在“邮件发送器的易语言源代码”这个主题中,我们可以深入探讨易语言如何实现邮件发送功能,这对于理解和学习易语言的网络通信模块具有重要意义。 首先,邮件发送通常基于SMTP(Simple Mail Transfer Protocol)...

    c#电子邮件发送器(基于Jmail)

    在C#编程环境中,开发一个电子邮件发送器是一个常见的任务,特别是在构建企业级应用程序时,用于自动化通知、报表发送等。本项目"XYJ_邮件发送器"是基于Jmail组件来实现这一功能的。Jmail是一款强大的.NET组件,它...

    花园邮件发送器破解版

    花园邮件发送器破解版 破解软件 免费软件

    邮件发送器 邮件自动发送器 邮件接收器V1.2 下载

    邮件发送器和邮件接收器是IT领域中用于通信和数据传输的重要工具,尤其在商业环境中,它们被广泛用于日常的工作沟通、营销活动以及自动化任务处理。邮件自动发送器是这样的工具的一个实例,它允许用户预设邮件内容和...

    邮件发送器V10

    《邮件发送器V10详解:打造高效便捷的电子邮交流平台》 在信息化高度发达的今天,电子邮件作为商务沟通和个人交流的重要工具,其效率和便捷性显得尤为重要。"邮件发送器V10"就是这样一款专为提升邮件发送体验而设计...

    王新宇数码广场邮件发送器

    【王新宇数码广场邮件发送器】是一款专为简化邮件发送流程而设计的软件工具,它免去了用户频繁登录QQ邮箱的步骤,提高了发送邮件的效率。这款软件的核心功能是帮助用户快速、方便地发送电子邮件,尤其适用于需要批量...

    Python SMTP邮件发送器脚本

    ### Python SMTP邮件发送器脚本知识点详解 #### 一、Python SMTP邮件发送器脚本概述 在日常工作中,我们常常需要通过程序自动化地发送邮件,无论是通知还是数据报告。Python 提供了强大的邮件处理功能,使得这一...

    一个简单的邮件发送器

    【邮件发送器】是一种应用程序,它允许用户通过网络发送电子邮件。在本案例中,我们讨论的是一个基础版本的邮件发送器,它仅支持连接到匿名服务器进行邮件传递。理解这个简单邮件发送器的工作原理和其背后的协议对于...

    Auto Email Sender(AES)自动邮件发送器

    Auto Email Sender(AES)自动邮件发送器 是一个非常有用且非常容易使用邮件发送器。可以指定时间发送邮件。 Auto Email Sender(AES)可以维护邮件模板,可以设置发送时间。您可以把你需要发送的内容制作成邮件模板,...

    易语言QQ邮件发送器

    易语言QQ邮件发送器是一款基于易语言编程的程序,用于帮助用户通过QQ邮箱发送电子邮件。易语言是中国本土的一种编程语言,旨在降低编程门槛,让普通用户也能进行软件开发。这款邮件发送器源码的开放提供了学习和...

    简单邮件发送器

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

    C# 邮件发送器

    本主题聚焦于“C#邮件发送器”,这是一种利用SMTP(Simple Mail Transfer Protocol)服务来实现电子邮件发送的程序。SMTP是互联网标准,用于在邮件服务器之间传输电子邮件。 在C#中,我们通常会使用`System.Net....

    基于MFC的邮件发送器.zip

    【标题】基于MFC的邮件发送器 【描述】该压缩包包含了一个基于Microsoft Foundation Class (MFC)库开发的邮件发送器应用。MFC是微软提供的一套C++类库,它使得开发者能够更容易地利用Windows API进行应用程序开发。...

    HackerJLY 邮件发送器

    一、HackerJLY 邮件发送器(支持:附件、通讯录、签名) 1、功能介绍: 高效邮件发送器 支持附件。你可以把附件拖放到窗体上,以:添加附件。 支持多语言(中文简体、中文繁体、英文),可根据操作系统版本语言自...

    C#邮件发送软件——星达速邮件发送器

    本邮件发送器实现Html格式发送(即跟网页登录邮件发送一样),跟很多高级邮件软件和网页邮件登录在线编编辑一样,完全实现“所见即所得”的效果,本软件虽小,但功能包括了绝大部分的一般正常电子邮件所用到的功能。...

    基于Pyqt5实现的邮件发送器(Python).zip

    "基于Pyqt5实现的邮件发送器(Python)" 是一个使用Python编程语言,并结合PyQt5库开发的邮件发送应用程序。PyQt5是Python中用于创建图形用户界面(GUI)的一个强大工具,它允许开发者构建功能丰富的桌面应用。在这...

    smtp邮件发送器源码

    SMTP(Simple Mail Transfer Protocol)邮件发送器是一种使用C++编程语言实现的应用程序,它能够根据SMTP协议发送电子邮件,包括正文内容以及附件。SMTP是互联网上用于传输电子邮件的标准协议,允许用户通过邮件...

Global site tag (gtag.js) - Google Analytics