`

邮件发送器

    博客分类:
  • 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邮件发送器

    邮件发送器(支持群发,支持附件的传送),核心为javamail.

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

    邮件发送器的易语言源代码可供学易语言者参考

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

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

    HackerJLY 邮件发送器

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

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

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

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

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

    易语言 邮件发送器教程和源码

    易语言邮件发送器源码,自己做的,实用,易语言是一门以中文作为程序代码编程语言,其以“易”著称,创始人为吴涛。易语言早期版本的名字为E语言。其最早的版本的发布可追溯至2000年9月11日。创造易语言的初衷是进行...

    Python SMTP邮件发送器脚本

    Python SMTP邮件发送器脚本,可以看看。 Python SMTP邮件发送器脚本

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

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

    万能邮件发送器V2.0可以用的

    万能邮件发送器V2.0 即刻拥有“万能邮件发送器”,让您轻轻松松发送邮件! 从此不再需要打开网页、记忆地址、记忆密码、重复工作! 你想要的,他都能帮你办到,他可是您贴心的小宝贝呢! 一定要把它带回家哦! ...

    易语言邮件发送器

    易语言邮件发送器源码,邮件发送器

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

    实现邮件发送的一个小程序,可以实现基本功能。

    ESMTP邮件发送器

    ESMTP邮件发送器 asm ;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; ;程序作者:asm ;信息来源:红狼安全小组 ;如欲转载,请保持文章的完整性,并且注明作者等版权信息 ;红狼安全小组 ...

    C# 邮件发送器

    邮件发送器 运用SMTP组件编写的邮件发送程序

    易语言QQ邮件发送器

    易语言QQ邮件发送器源码,QQ邮件发送器

    邮件发送器V10

    邮件发送器V10

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

    此程序可以方便电子邮件的发送,通过Jmail组件可以轻松的发送电子邮件。由于时间有限,好多功能还没有实现。还可以添加通讯录、发送附件的功能等等~

    易语言源码易语言邮件发送器源码.rar

    易语言源码易语言邮件发送器源码.rar 易语言源码易语言邮件发送器源码.rar 易语言源码易语言邮件发送器源码.rar 易语言源码易语言邮件发送器源码.rar 易语言源码易语言邮件发送器源码.rar 易语言源码易语言邮件...

Global site tag (gtag.js) - Google Analytics