julie.com.mikaelson.util.EmailSenderUtil.java Source code

Java tutorial

Introduction

Here is the source code for julie.com.mikaelson.util.EmailSenderUtil.java

Source

/******************************************************************************
 * @File name : EmailSenderUtil.java
 *
 * @Author : Administrator
 *
 * @Date : 2016518
 *
 * @Copyright Notice:
 * Copyright (c) 2020 Niklaus Mikaelson, Inc. All Rights Reserved.
 * This software is published under the terms of the Niklaus Mikaelson Software
 * License version 1.0, a copy of which has been included with this
 * distribution in the LICENSE.txt file.
 *
 *
 *
  ----------------------------------------------------------------------------
 * Date             Who       Version    Comments
 * 2016518?10:14:55    Administrator    1.0       Initial Version
 **************************************************************************************/

package julie.com.mikaelson.util;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import javax.mail.MessagingException;
import javax.mail.internet.MimeMessage;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mail.MailException;
import org.springframework.mail.javamail.JavaMailSenderImpl;
import org.springframework.mail.javamail.MimeMessageHelper;

/**
 *
 */
public class EmailSenderUtil {
    private static JavaMailSenderImpl javaMail;

    @Autowired
    private static EmailConfig emailConfig;

    static {

        javaMail = new JavaMailSenderImpl();

        javaMail.setHost(emailConfig.getServerHost());
        javaMail.setPort(emailConfig.getServerPort());
        javaMail.setProtocol(emailConfig.getProtocol());
        javaMail.setUsername(emailConfig.getUsername());
        javaMail.setPassword(emailConfig.getPassword());
    }

    /*public static void main(String[] args) {
           
        * for(int i=0;i<20;i++) { ThreadTest ii = new ThreadTest();
        * System.out.println
        * (ii.getId()+"invoked    "+System.currentTimeMillis()); ii.start(); }
            
        
       String[] toList = new String[1];
       toList[0] = "love20141002@126.com";
        
       for (int i = 0; i < 20; i++) {
     new Runnable() {
        public void run() {
           // try {
           long start = System.currentTimeMillis();
           System.out.println("invoked  ===============  "
                 + System.currentTimeMillis());
           sendEmail(toList, "hello wolrd");
           // Thread.sleep(10*1l);
           System.out.println("total time is "
                 + (System.currentTimeMillis() - start));
           // } catch (InterruptedException e) {
           // e.printStackTrace();
           // }
        }
     }.run();
     System.out.println("============================================");
       }
    }*/

    synchronized public static boolean sendEmail(String[] toList, String content) {
        boolean result = false;
        MimeMessage message = javaMail.createMimeMessage();
        MimeMessageHelper messageHelp;
        try {
            long start = System.currentTimeMillis();
            System.out.println("sendEmail invoked ");
            messageHelp = new MimeMessageHelper(message, true, "UTF-8");
            messageHelp.setFrom(emailConfig.getFrom());
            messageHelp.setTo(toList);
            messageHelp.setSubject("Test");
            String body = content + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
            messageHelp.setText(body, true);
            javaMail.send(message);
            System.out.println("send total time is" + (System.currentTimeMillis() - start));
            Thread.sleep(10 * 1000l);

        } catch (MailException e) {
            e.printStackTrace();
        } catch (MessagingException e) {
            e.printStackTrace();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

        return result;
    }

    public static boolean sendEmail(List<String> toList, List<String> ccList, String content) {
        boolean result = false;

        return result;
    }

    public static boolean sendEmail(List<String> toList, List<String> ccList, List<String> bccList,
            String content) {
        boolean result = false;

        return result;
    }

}