精华内容
下载资源
问答
  • Java实现定时发送邮件功能

    万次阅读 2018-08-30 22:49:25
    定时发送邮件 发送邮件在很多场景下都可以被使用到,例如:项目报错,将异常信息及时发送给开发人员;将服务器运行状态及时发送给运维人员;注册成功发送邮件给用户等等。这些都是为了及时将信息反馈给相关人员,...

    定时发送邮件

    发送邮件在很多场景下都可以被使用到,例如:项目报错,将异常信息及时发送给开发人员;将服务器运行状态及时发送给运维人员;注册成功发送邮件给用户等等。这些都是为了及时将信息反馈给相关人员,以便知道详情。
    在这里是结合线程发送邮件,首先先创建发送邮件工具类:

    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    import java.util.Map;
    
    import org.apache.commons.mail.EmailAttachment;
    import org.apache.commons.mail.EmailException;
    import org.apache.commons.mail.HtmlEmail;
    import org.apache.commons.mail.SimpleEmail;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    
    import com.google.common.collect.Maps;
    import MailConfig;
    
    /**
     * 
     * <b>Description:</b>发送邮件工具类<br>
     */
    public class MailUtil {
        private static Logger log = LoggerFactory.getLogger(MailUtil.class);
    
        private static String userName = MailConfig.getUserName();
        private static String passWord = MailConfig.getPassWord();
        private static String smtpHost = MailConfig.getSmtpHost();
        private static String fromEmail = MailConfig.getFromEmail();
        private static String charset = MailConfig.getCharset();
        private static String senderName = MailConfig.getSenderName();
        private static String encryptionType = MailConfig.getEncryptionType();
        private static int mailPort = Integer.valueOf(MailConfig.getMailPort());
    
        /**
         * <b>Description:</b>发送Html邮件<br>
         * 
         * @param to 收件人
         * @param cc 抄送
         * @param list
         * @param subject 主题
         * @param htmlContent 内容
         */
        public static void sendHtmlMailWithoutSSL(Map<String, String> to, Map<String, String> cc, String subject, String htmlContent) {
    
            HtmlEmail email = new HtmlEmail();
    
            email.setCharset(MailUtil.charset);
            email.setHostName(smtpHost);
            email.setAuthentication(userName, passWord);
            email.setSubject(subject);
    
            email.setSSL(true);
            email.setSmtpPort(mailPort);
            try {
                email.setFrom(fromEmail);
    
                if (to != null) {
                    for (Map.Entry<String, String> map : to.entrySet()) {
                        email.addTo(map.getValue(), map.getKey());
                    }
                }
    
                if (cc != null) {
                    for (Map.Entry<String, String> map : cc.entrySet()) {
                        email.addCc(map.getValue(), map.getKey());
                    }
                }
    
                if (list != null) {
                    for (EmailAttachment attachment : list) {
                        email.attach(attachment);
                    }
                }
    
                email.setMsg(htmlContent);
    
                email.send();
            } catch (EmailException e) {
                log.error("$$$ Error sending mail, catch a EmailException !userName:" + userName);
                e.printStackTrace();
            }
            log.debug("$$$ Send email successful!");
        }
    }
    
    

    工具类中到的一些配置是放在xml中,一下邮件配置类:

    
    /**
     * 
     * <b>Description:</b>邮箱配置类<br> 
     */
    public class MailConfig {
        /**
         * 邮箱登录名
         */
        private static String userName;
        /**
         * 邮箱登录密码
         */
        private static String passWord;
        /**
         * smtp
         */
        private static String smtpHost;
        /**
         * 发送邮箱
         */
        private static String fromEmail;
        /**
         * 字符设置
         */
        private static String charset;
        /**
         * 发送者名称
         */
        private static String senderName;
        /**
         * 加密类型
         */
        private static String encryptionType;
        /**
         * 邮箱服务器端口
         */
        private static String mailPort;
    
        public static String getUserName() {
            return userName;
        }
    
        public static void setUserName(String userName) {
            MailConfig.userName = userName;
        }
    
        public static String getPassWord() {
            return passWord;
        }
    
        public static void setPassWord(String passWord) {
            MailConfig.passWord = passWord;
        }
    
        public static String getSmtpHost() {
            return smtpHost;
        }
    
        public static void setSmtpHost(String smtpHost) {
            MailConfig.smtpHost = smtpHost;
        }
    
        public static String getFromEmail() {
            return fromEmail;
        }
    
        public static void setFromEmail(String fromEmail) {
            MailConfig.fromEmail = fromEmail;
        }
    
        public static String getCharset() {
            return charset;
        }
    
        public static void setCharset(String charset) {
            MailConfig.charset = charset;
        }
    
        public static String getSenderName() {
            return senderName;
        }
    
        public static void setSenderName(String senderName) {
            MailConfig.senderName = senderName;
        }
    
        public static String getEncryptionType() {
            return encryptionType;
        }
    
        public static void setEncryptionType(String encryptionType) {
            MailConfig.encryptionType = encryptionType;
        }
    
        public static String getMailPort() {
            return mailPort;
        }
    
        public static void setMailPort(String mailPort) {
            MailConfig.mailPort = mailPort;
        }
    
    }
    
    

    applicationContext.xml配置:

    <!-- Mail模块配置 -->
    	<bean class="MailConfig类">
    		<property name="userName" value="${USER_NAME}" />
    		<property name="passWord" value="${PASSWORD}" />
    		<property name="smtpHost" value="${SMTP_HOST}" />
    		<property name="fromEmail" value="${FROM_EMAIL}" />
    		<property name="charset" value="${CHARSET}" />
    		<property name="senderName" value="${SENDER_NAME}" />
    		<property name="encryptionType" value="${ENCRYPTIONT_YPE}" />
    		<property name="mailPort" value="${MAIL_PORT}" />
    	</bean>
    

    现在邮件发送已经可以,如何定时发送呢?可以加个发送邮件线程,每隔一段时间检查是否有邮件需要发送,有的话,调用发送邮件工具类,没有就sleep。

    
    
    import java.util.Date;
    import java.util.LinkedList;
    import java.util.List;
    import java.util.Map.Entry;
    import java.util.Set;
    
    import org.springframework.web.context.ContextLoader;
    
    /**
     * 
     * <b>Description:</b>邮件发送线程<br>
     */
    public class MailSenderThead extends Thread {
        /**
         * 待发送邮件列表
         */
        private static List<Mail> mailList = new LinkedList<Mail>();
    
        /**
         * 
         * <b>Description:</b>添加需要发送的邮件<br>
         * 
         * @param mail void
         */
        public static void addMail(Mail mail) {
            mailList.add(mail);
        }
    
        @Override
        public void run() {
            while (true) {
                if (mailList.size() == 0) {
                    try {
                        Thread.sleep(1000L); //待发送邮件列表为空,sleep1秒钟
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    continue;
                }
                Mail mail = mailList.get(0);
                try {
                    mailList.remove(0);
                    // 这里可以保存email日志
                    //发送邮件
                    MailUtil.sendHtmlMailWithoutSSL(mail.getTo(), null, null, mail.getSubject(), mail.getContent());
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }
    }
    
    

    现在定时发邮件功能已能实现,当然在此基础上还要写业务层什么,这里就不累赘了。这只是定时发送邮件的一种实现,还可以结合定时器实现。

    展开全文
  • java实现定时发送邮件

    2020-12-21 04:32:26
    需要做一个功能就是 客户使用我们公司的设备的时候 ,每天固定一个时间点 ,我们定时发送该设备的数据到客户邮箱,让客户了解自己设备的一个情况,由于代码不能上传,就把当时我开始搭建开发而写的一个demo记录下来,实现...
  • java实现邮箱发送功能,并且可以不间断的定时发送
  • java实现邮件定时发送的方法

    千次阅读 2018-04-25 15:43:28
    这篇文章主要介绍了java编程实现邮件定时发送的方法,涉及Java基于定时器实现计划任务的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下 &lt;div id="content"&gt; &lt;p&gt;...

    java编程实现邮件定时发送的方法

    这篇文章主要介绍了java编程实现邮件定时发送的方法,涉及Java基于定时器实现计划任务的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
        <div id="content">
            <p>本文实例讲述了java编程实现邮件定时发送的方法。分享给大家供大家参考,具体如下:</p>
    

    最近做项目时客户提出了一个需求:系统定时发送E-mail到其客户,达到通知的效果。先将实例分享给大家,如果确实有一些帮助的话,请大家来点掌声!

    首先介绍java定时器(java.util.Timer)有定时执行计划任务的功能,通过设定定时器的间隔时间,会自动在此间隔时间后执行预先安排好的任务(java.util. TimerTask)

    如: 每隔一个小时执行任务 timer.schedule(TimerTask, 0, 60 * 60 * 1000);

    schedule方法的第一个参数是需要执行的任务,此类的类型为java.util.TimerTask,第二个参数为执行任务前等待时间,此处0表示不等待,第三个参数为间隔时间,单位为毫秒

    由于我们希望当Web工程启动时,定时器能自动开始计时,这样在整个Web工程的生命期里,就会定时的执行任务,因此启动定时器的类不能是一般的类,此处用Servlet的监听器类来启动定时器,通过在配置文件里配置此监听器, 让其在工程启动时自动加载运行,存活期为整个Web工程生命期.

    要运用Servlet侦听器需要实现javax.servlet.ServletContextListener接口,以下是实例:

    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    public class MyTimerTask implements ServletContextListener
    {
    private Timer timer = null ;
    public void contextDestroyed(ServletContextEvent event)
    {
      timer.cancel();
      event.getServletContext().log( "定时器销毁" );
    public void contextInitialized(ServletContextEvent event)
    {
      //在这里初始化监听器,在tomcat启动的时候监听器启动,可以在这里实现定时器功能
      timer = new Timer( true );
      event.getServletContext().log( "定时器已启动" ); //添加日志,可在tomcat日志中查看到
      //调用exportHistoryBean,0表示任务无延迟,5*1000表示每隔5秒执行任务,60*60*1000表示一个小时;
      timer.schedule( new SendEmail(event.getServletContext()), 0 , 24 * 60 * 60 * 1000 );
    }
    }

    使用javamail发送邮件需要两个包(下面我上传的有,下载即可):activation.jar   mail.jar将这两个报发到项目的lib目录下

    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    public class SendEmail extends TimerTask
    {
    private ServletContext context = null ;
    public SendEmail(ServletContext context)
    {
      this .context = context;
    }
    @Override
    public void run()
    {
        /*
        * 以下为javamail的邮件发送
        */
         System.out.println( "正在发送邮件" );
         Properties props= new Properties();
         props.put( "mail.smtp.host" , "smtp.163.com" ); //发件人使用发邮件的电子信箱服务器我使用的是163的服务器
         props.put( "mail.smtp.auth" , "true" ); //这样才能通过验证
         Session s=Session.getInstance(props);
         s.setDebug( true );
         MimeMessage message= new MimeMessage(s);
         //给消息对象设置发件人/收件人/主题/发信时间
         InternetAddress from= new InternetAddress( "daida@163.com" ); //发邮件的出发地(发件人的信箱),这是我的邮箱地址,使用请改成你的有效地址
         message.setFrom(from);
         InternetAddress to= new InternetAddress(tto); // tto为发邮件的目的地(收件人信箱)
         message.setRecipient(Message.RecipientType.TO,to);
         message.setSubject(ttitle); // ttitle为邮件的标题
         message.setSentDate( new Date());
         BodyPart mdp= new MimeBodyPart(); //新建一个存放信件内容的BodyPart对象
         mdp.setContent(tcontent, "text/html;charset=utf-8" ); //给BodyPart对象设置内容和格式/编码方式tcontent为邮件内容
         Multipart mm= new MimeMultipart(); //新建一个MimeMultipart对象用来存放BodyPart对
         //象(事实上可以存放多个)
         mm.addBodyPart(mdp); //将BodyPart加入到MimeMultipart对象中(可以加入多个BodyPart)
         message.setContent(mm); //把mm作为消息对象的内容
         message.saveChanges();
         Transport transport=s.getTransport( "smtp" );
         transport.connect( "smtp.163.com" , "daida" , "789-jik" ); //发邮件人帐户密码,此外是我的帐户密码,使用时请修改。
         transport.sendMessage(message,message.getAllRecipients());
         transport.close();
       }   
       }
        catch (Exception e)
        {
       e.printStackTrace();
       }   
       
    }
    }

    该定时器在web.xml中的配置为:

    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <? xml version = "1.0" encoding = "UTF-8" ?>
    < web-app version = "2.4"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    < listener >
         < listener-class >cachay.saga.utils.MyTimerTask</ listener-class >
       </ listener >
    </ web-app >

    至此,所有操作均已完成,需要加入activation.jar   mail.jar

    展开全文
  • spring提供的定时发送邮件功能一直深受广大web开发者的喜爱,这篇文章主要介绍了Spring+quartz实现定时发送邮件功能实例,有兴趣的可以了解一下。
  • java实现邮件定时发送

    2016-04-11 16:48:54
    最近做项目时客户提出了一个需求:系统定时发送E-mail到其客户,达到通知的效果。先将实例分享给大家,如果确实有一些帮助的话,请大家来点掌声! 首先介绍java定时器(java.util.Timer)有定时执行计划任务...

    http://blog.csdn.net/awj3584/article/details/7863772


    最近做项目时客户提出了一个需求:系统定时发送E-mail到其客户,达到通知的效果。先将实例分享给大家,如果确实有一些帮助的话,请大家来点掌声!

    首先介绍java定时器(java.util.Timer)有定时执行计划任务的功能,通过设定定时器的间隔时间,会自动在此间隔时间后执行预先安排好的任务(java.util. TimerTask)

    如: 每隔一个小时执行任务 timer.schedule(TimerTask, 0, 60 * 60 * 1000);

    schedule方法的第一个参数是需要执行的任务,此类的类型为java.util.TimerTask,第二个参数为执行任务前等待时间,此处0表示不等待,第三个参数为间隔时间,单位为毫秒

    由于我们希望当Web工程启动时,定时器能自动开始计时,这样在整个Web工程的生命期里,就会定时的执行任务,因此启动定时器的类不能是一般的类,此处用Servlet的监听器类来启动定时器,通过在配置文件里配置此监听器, 让其在工程启动时自动加载运行,存活期为整个Web工程生命期.

    要运用Servlet侦听器需要实现javax.servlet.ServletContextListener接口,以下是实例:

          

    public class MyTimerTask implements ServletContextListener

    private Timer timer = null;  
    public void contextDestroyed(ServletContextEvent event) 
    {  
      timer.cancel(); 
      event.getServletContext().log("定时器销毁");  
    }   
    public void contextInitialized(ServletContextEvent event) 

      //在这里初始化监听器,在tomcat启动的时候监听器启动,可以在这里实现定时器功能 
      timer = new Timer(true); 
      event.getServletContext().log("定时器已启动");//添加日志,可在tomcat日志中查看到 
      //调用exportHistoryBean,0表示任务无延迟,5*1000表示每隔5秒执行任务,60*60*1000表示一个小时;
      timer.schedule(new SendEmail(event.getServletContext()),0,24*60*60*1000);  

    }

    使用javamail发送邮件需要两个包(下面我上传的有,下载即可):activation.jar   mail.jar将这两个报发到项目的lib目录下

    public class SendEmail extends TimerTask 

    private ServletContext context = null; 

    public SendEmail(ServletContext context) 

      this.context = context; 


    @Override 
    public void run() 

          /*
          * 以下为javamail的邮件发送
          */

           System.out.println("正在发送邮件");

            Properties props=new Properties();
            props.put("mail.smtp.host","smtp.163.com");//发件人使用发邮件的电子信箱服务器我使用的是163的服务器
            props.put("mail.smtp.auth","true"); //这样才能通过验证
            Session s=Session.getInstance(props);
            s.setDebug(true);

            MimeMessage message=new MimeMessage(s);

            //给消息对象设置发件人/收件人/主题/发信时间
            InternetAddress from=new InternetAddress("daida@163.com");  //发邮件的出发地(发件人的信箱),这是我的邮箱地址,使用请改成你的有效地址
            message.setFrom(from);
            InternetAddress to=new InternetAddress(tto);// tto为发邮件的目的地(收件人信箱)

            message.setRecipient(Message.RecipientType.TO,to);
            message.setSubject(ttitle);// ttitle为邮件的标题
            message.setSentDate(new Date());
            BodyPart mdp=new MimeBodyPart();//新建一个存放信件内容的BodyPart对象
            mdp.setContent(tcontent,"text/html;charset=utf-8");//给BodyPart对象设置内容和格式/编码方式tcontent为邮件内容
            Multipart mm=new MimeMultipart();//新建一个MimeMultipart对象用来存放BodyPart对
            //象(事实上可以存放多个)
            mm.addBodyPart(mdp);//将BodyPart加入到MimeMultipart对象中(可以加入多个BodyPart)
            message.setContent(mm);//把mm作为消息对象的内容

            message.saveChanges();
            Transport transport=s.getTransport("smtp");
            transport.connect("smtp.163.com","daida","789-jik");//发邮件人帐户密码,此外是我的帐户密码,使用时请修改。
            transport.sendMessage(message,message.getAllRecipients());
            transport.close();
        }        
       } 
          catch (Exception e) 
          {
        e.printStackTrace();
       }       
         }    
    }
    }

    该定时器在web.xml中的配置为:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" 
    xmlns="http://java.sun.com/xml/ns/j2ee
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">


    <listener>
            <listener-class>cachay.saga.utils.MyTimerTask</listener-class>
        </listener> 

    </web-app>

    至此,所有操作均已完成,需要加入activation.jar   mail.jar

    展开全文
  • Java实现邮件定时发送

    2014-03-27 17:41:00
    首先介绍java定时器(java.util.Timer)有定时执行计划任务的功能,通过设定定时器的间隔时间,会自动在此间隔时间后执行预先安排好的任务(java.util. TimerTask) 如: 每隔一个小时执行任务 timer.schedule(TimerTask,...

    首先介绍java定时器(java.util.Timer)有定时执行计划任务的功能,通过设定定时器的间隔时间,会自动在此间隔时间后执行预先安排好的任务(java.util. TimerTask)

    如: 每隔一个小时执行任务 timer.schedule(TimerTask, 0, 60 * 60 * 1000);

    schedule方法的第一个参数是需要执行的任务,此类的类型为java.util.TimerTask,第二个参数为执行任务前等待时间,此处0表示不等待,第三个参数为间隔时间,单位为毫秒

    由于我们希望当Web工程启动时,定时器能自动开始计时,这样在整个Web工程的生命期里,就会定时的执行任务,因此启动定时器的类不能是一般的类,此处用Servlet的监听器类来启动定时器,通过在配置文件里配置此监听器, 让其在工程启动时自动加载运行,存活期为整个Web工程生命期.

    要运用Servlet侦听器需要实现javax.servlet.ServletContextListener接口,以下是实例:

    public class MyTimerTask implements ServletContextListener{
        private Timer timer = null; 
        public void contextDestroyed(ServletContextEvent event){ 
          timer.cancel();
          event.getServletContext().log("定时器销毁"); 
        }  
        public void contextInitialized(ServletContextEvent event){
          //在这里初始化监听器,在tomcat启动的时候监听器启动,可以在这里实现定时器功能
          timer = new Timer(true);
          event.getServletContext().log("定时器已启动");//添加日志,可在tomcat日志中查看到
          //调用exportHistoryBean,0表示任务无延迟,5*1000表示每隔5秒执行任务,60*60*1000表示一个小时;
          timer.schedule(new SendEmail(event.getServletContext()),0,24*60*60*1000); 
        }
    }

    使用javamail发送邮件需要两个包(下面我上传的有,下载即可):activation.jar   mail.jar将这两个报发到项目的lib目录下

    public class SendEmail extends TimerTask
    {
    private ServletContext context = null;
    public SendEmail(ServletContext context)
    {
      this.context = context;
    }
    @Override
    public void run()
    {
          /*
          * 以下为javamail的邮件发送
          */
           System.out.println("正在发送邮件");
            Properties props=new Properties();
            props.put("mail.smtp.host","smtp.163.com");//发件人使用发邮件的电子信箱服务器我使用的是163的服务器
            props.put("mail.smtp.auth","true"); //这样才能通过验证
            Session s=Session.getInstance(props);
            s.setDebug(true);
            MimeMessage message=new MimeMessage(s);
            //给消息对象设置发件人/收件人/主题/发信时间
            InternetAddress from=new InternetAddress("daida@163.com");  //发邮件的出发地(发件人的信箱),这是我的邮箱地址,使用请改成你的有效地址
            message.setFrom(from);
            InternetAddress to=new InternetAddress(tto);// tto为发邮件的目的地(收件人信箱)
            message.setRecipient(Message.RecipientType.TO,to);
            message.setSubject(ttitle);// ttitle为邮件的标题
            message.setSentDate(new Date());
            BodyPart mdp=new MimeBodyPart();//新建一个存放信件内容的BodyPart对象
            mdp.setContent(tcontent,"text/html;charset=utf-8");//给BodyPart对象设置内容和格式/编码方式tcontent为邮件内容
            Multipart mm=new MimeMultipart();//新建一个MimeMultipart对象用来存放BodyPart对
            //象(事实上可以存放多个)
            mm.addBodyPart(mdp);//将BodyPart加入到MimeMultipart对象中(可以加入多个BodyPart)
            message.setContent(mm);//把mm作为消息对象的内容
            message.saveChanges();
            Transport transport=s.getTransport("smtp");
            transport.connect("smtp.163.com","daida","789-jik");//发邮件人帐户密码,此外是我的帐户密码,使用时请修改。
            transport.sendMessage(message,message.getAllRecipients());
            transport.close();
        }       
       }
          catch (Exception e)
          {
        e.printStackTrace();
       }      
         }   
    }
    }

    该定时器在web.xml中的配置为:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4"
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
        <listener>
            <listener-class>cachay.saga.utils.MyTimerTask</listener-class>
        </listener>
    </web-app>

    至此,所有操作均已完成,需要加入activation.jar   mail.jar

    转载于:https://my.oschina.net/discussjava/blog/213484

    展开全文
  • 做爬虫开发时候为了时刻得到爬虫的抓取状况,所以用到一个定时发送邮件系统,以便随时把爬虫抓取情况发送到我的邮箱,从而更好地了解爬虫运行情况,有用到的朋友尽管拷贝用了,直接能用的,记者把你的邮箱发送服务器...
  • 最近做项目时客户提出了一个需求:系统定时发送E-mail到其客户,达到通知的效果。先将实例分享给大家,如果确实有一些帮助的话,请大家来点掌声! 首先介绍java定时器(java.util.Timer)有定时执行计划任务...
  • java实现qq邮箱每天定时发送邮件

    千次阅读 2016-07-09 20:47:13
    于是,这里把他们结合起来了,实现定时发送邮件,向暗恋的女神表白的用处(yiyin)。 我没有研究过quartz框架,这里主要是从实用的角度讲一下。在使用时,需要编写任务类和触发器类两部分的代码。任务类是
  • 首先介绍java定时器(java.util.Timer)有定时执行计划任务的功能,通过设定定时器的间隔时间,会自动在此间隔时间后执行预先安排好的任务(java.util. TimerTask)   由于我们希望当Web工程启动时,定时器能自动开始...
  • java web使用监听器实现定时周期性执行任务的功能,定时邮件发送、文件删除等自定义功能可自行添加
  • java定时发送邮件

    2019-03-12 17:08:18
    最近做项目时客户提出了一个需求:系统定时发送E-mail到其客户,达到通知的效果。先将实例分享给大家,如果确实有一些帮助的话,请大家来点掌声! 首先介绍java定时器(java.util.Timer)有定时执行计划任务的...
  • JAVA实现发短信功能

    千次阅读 2019-08-24 17:55:31
    相信这类型短信,大家收到的很多吧!但是,你知道这个是怎么实现的吗?...那么,用程序该怎么实现短信的发送功能呢? 首先我们需要短信发送的几个jar包。 https://pan.baidu.com/s/1rogxp4xJO6p...
  • 不知道大家有没有需要这样的功能,比如某功能需要每天或者每周或者每月查询一次或者执行一次相同的功能, 例如一些查询统计的周报或者月报,需要以excel的形式下载下来或者发送到某人邮箱里,这时候如果每次都要...
  • 使用Timer使用ScheduledExecutorService使用Spring Task整合Quartz最后《Netty 实现原理与源码解析 —— 精品合集》《Spring 实现原理与源码解析 —— 精品合集》《MyBatis 实现原理与源码解析 —— 精品合集》...
  • 对于多数开发者而言,可能都希望能将自己的程序中定时产生一些重要文件(例如运行日志、爬虫结果、统计报表等)自动定时上传至一个程序内置的私有网络文件共享平台上,并在上传时按照上传日期或者其版本号命名。...
  • 在做毕业设计时,遇到了需要定时发送邮件的功能,这里记录一下 下面时发送邮件的具体类 SendMailTool类是我写的用于传递参数的类,SendTool工具类 ...因为做的是定时发送邮件的功能,首先介绍java定时器(java.ut
  • import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.concurrent.ExecutorService; import java....
  • 我现在刚进一家公司实习,最近要我做一个定时发送邮件的功能,我从网上参考了一些,自己也实现了从数据库获取数据,实现定时发送邮件的功能,代码如下: 一、首先写一个servlet的监听器 package net.bjgf.util; ...
  • package com.example.sercive; public interface SendEmailService { String sendEmail(); }
  • 因为生活中老是忘记各种事情,刚好又在学python,便突发奇想通过python实现提醒任务的功能(尽管TIM有定时功能),也可定时给好友、群、讨论组发送qq消息。其工作流程是:访问数据库提取最近计划——>根据数据内容...
  • package com.huawei.dm.datasource.system; import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask; public class Test {  public static void

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 48,931
精华内容 19,572
关键字:

java实现定时发送功能

java 订阅