javajob定时发送邮件(java发送邮件附件)

本篇文章给大家谈谈javajob定时发送邮件,以及java发送邮件附件对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

1、java怎么定时发送邮件,比如5分钟后。要具体的代码。发件人和收件人这些都可定死。2、关于java定时发送邮件,类似于QQ邮箱中的定时发送功能3、java 指定某个时间发送邮件4、关于java定时任务,一次发了两封邮件5、怎样用JavaMail实现邮件的自动回复和定时发送6、如何实现每天定时发送邮件?

java怎么定时发送邮件,比如5分钟后。要具体的代码。发件人和收件人这些都可定死。

import java.util.*;

import javax.mail.Message;

import javax.mail.MessagingException;

import javax.mail.Multipart;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetBddress;

import javax.mail.internet.MimeBodyPart;

import javax.mail.internet.MimeMessage;

import javax.mail.internet.MimeMultipart;

import javax.naming.*;

import javax.naming.directory.*;

/**

* 使成为事实邮件的特快专递功能

* @author Winter Lau

*/

public class Mailer {

public static void main(String[] args) throws NamingException,

MessagingException {

// 列出所有邮件服务器:

Timer timer = new Timer();

timer.schedule(new myTask(), 30000);

}

static class myTask extends TimerTask{

public void run(){

// DNS服务器,看看本机的DNS配置

String dns = “dns://61.144.56.101”;

String email = “liudong@mo168.com”;

String domain = email.substring(email.indexOf(‘@’) + 1);

Hashtable env = new Hashtable();

env.put(Dontext.INITIBL_DONTEXT_FBDTORY,

“com.sun.jndi.dns.DnsDontextFactory”);

env.put(Dontext.PROVIDER_URL, dns);

DirDontext ctx = new InitialDirDontext(env);

Bttributes attr = ctx.getBttributes(domain, new String[] { “MX” });

NamingEnumeration servers = attr.getBll();

while (servers.hasMore()) {

Bttribute hosts = (Bttribute) servers.next();

for (int i = 0; i hosts.size(); i++) {

String host = (String) hosts.get(i);

host = host.substring(host.indexOf(‘ ‘) + 1);

System.out.print(“Send mail to ” + host + ” …”);

sendMail(host, email);

System.out.println(“OK”);

}

}

}

}

/**

* 发送邮件

*

* @param smtpHost

* @param email

* @throws MessagingException

*/

protected static void sendMail(String smtpHost, String email)

throws MessagingException {

Properties mailProperties = System.getProperties();

mailProperties.put(“mail.smtp.host”, smtpHost);

mailProperties.put(“mail.smtp.port”, “25”);

mailProperties.put(“mail.smtp.auth”, “false”);

Session mailSession = Session.getInstance(mailProperties, null);

MimeMessage mailMessage = new MimeMessage(mailSession);

MimeBodyPart messageBodyPart = new MimeBodyPart();

Multipart multipart = new MimeMultipart(“related”);

messageBodyPart.setText(“这搭是邮件内部实质意义”);

multipart.addBodyPart(messageBodyPart);

mailMessage.setDontent(multipart);

mailMessage.setSentDate(new Date());

mailMessage.setFrom(new InternetBddress(“javayou@gmail.com”));

mailMessage.addRecipient(Message.RecipientType.TO, new InternetBddress(

email));

mailMessage.setSubject(“hi,邮件发送测试”);

Transport.send(mailMessage);

}

@Override

public void run() {

// TODO Auto-generated method stub

}

}

关于java定时发送邮件,类似于QQ邮箱中的定时发送功能

建议方法:

如果你的java会死亡/失去控制, 请用系统的任务调度来发送邮件;

如果你的java由jboss等之类的托管, 用jboss内部的任务调度来发送邮件.

方法1:

Windws 平台, 在task中添加一个 任务, 命令行执行java 代码即可, 这样可靠性由操作系统保证;

Linux等平台, 直接 crontab 处理即可.

java 指定某个时间发送邮件

既然有了定时,其他的就好办啦,像你这个需求,肯定得做很多配置,比如表单该如何自动填写,填写什么样的内容进去,至于发送时间就可以在quartz里面配置好。总之,你想让程序帮你自动完成的功能,你必须事先把需要做的事清楚的告诉程序代码,否则你让它怎么下手呢!

关于java定时任务,一次发了两封邮件

如果是同时发了2封邮件,自己敲个断点出来,看一下变量的赋值以及函数是不是调了2次

javajob定时发送邮件(java发送邮件附件)

怎样用JavaMail实现邮件的自动回复和定时发送

1 import org.quartz.Job;

2 import org.quartz.JobExecutionContext;

3 import org.quartz.JobExecutionException;

4 import java.util.Calendar;

5 import java.text.SimpleDateFormat;

6 import java.util.Date;

7 import java.lang.InterruptedException;

8 import java.util.Random;

9 import java.util.Properties;

10 import javax.mail.*;

11 import javax.mail.internet.*;

12 public class MailJob implements Job

13 {

14 public void execute(JobExecutionContext context)

15 throws JobExecutionException {

16 //收件人,标题和文本内容

17 String to = “#######@126.com”;//填写你要发给谁

18 String title = createTitle();

19 String text = createText();

20 //设置属性

21 Properties props = new Properties();

22 //QQ邮箱发件的服务器和端口

23 props.put(“mail.smtp.host”, “smtp.qq.com”);

24 props.put(“mail.smtp.socketFactory.port”, “465”);

25 props.put(“mail.smtp.socketFactory.class”, “javax.net.ssl.SSLSocketFactory”);

26 props.put(“mail.smtp.auth”, “true”);

27 props.put(“mail.smtp.port”, “25”);

28 Session session = Session.getDefaultInstance(props,

29 new javax.mail.Authenticator() {

30 protected PasswordAuthentication getPasswordAuthentication() {

31 //填写你的qq邮箱用户名和密码

32 return new PasswordAuthentication(“*******@qq.com”, “###***%%%”);

33 }

34 });

35 MimeMessage message = new MimeMessage(session);

36 //这里用flag来标记是否发件成功(有时候会连不上服务器),

37 //如果没有,继续发送,直到发送成功为止。

38 int flag = 0;

39 {

40 try {

41 //设置发件人,收件人,主题和文本内容,并发送

42 message.setFrom(new InternetAddress(“*******@qq.com”));//填写你自己的qq邮箱,和上面相同

43 message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));

44 message.setSubject(title);

45 message.setText(text);

46 System.out.println(“Preparing sending mail…”);

47 System.out.println(text);

48 Transport.send(message);

49 flag = 1;

50 System.out.println(“message sent successfully”);

51 } catch(Exception e) {

52 flag = 0;

53 }

54 } while(flag == 0);

55 }

56 //下面的两个方法,用来随机组合标题和文本内容。文本内容由四部分随机组合。

57 //产生标题

58 public String createTitle() {

59 String[] titles = {“love”, “I love you”, “Miss you”, “My baby”};

60 Random randT = new Random(System.currentTimeMillis());

61 String title = titles[randT.nextInt(titles.length)];

62 return title;

63 }

64 //产生文本内容,文本内容由四部分随机组合得到。

65 public String createText() {

66 //名字纯属虚构,如有雷同(肯定会有),纯属巧合。

67 String[] parts1 = {“晓静,你好。”, “晓静,你还好吗?”, “晓静,你那边天气怎么样?”};

68 String[] parts2 = {

69 “距离上次见面,我感觉已经好长时间了。”,

70 “流去的时间磨不去我对你的爱。”,

71 “我仍然记得你在天安门前的那一抹笑容。”

72 };

73 String[] parts3 = {“今天,我大胆地追求你。”,

74 “我不怕大胆地对你说,我爱你。”,

75 “此刻,月亮代表我的心。”

76 };

77 String[] parts4 = {

78 “未来,我的心依旧属于你。”,

79 “好想在未来陪你一起慢慢变老,当然在我心中你不会老。”

80 };

81 Random randT = new Random(System.currentTimeMillis());

82 String text = parts1[randT.nextInt(parts1.length)]

83 + parts2[randT.nextInt(parts2.length)]

84 + parts3[randT.nextInt(parts3.length)]

85 + parts4[randT.nextInt(parts4.length)];

86 return text;

87 }

88

89 }

复制代码

触发器的代码:

复制代码

1 import org.quartz.CronScheduleBuilder;

2 import org.quartz.JobBuilder;

3 import org.quartz.JobDetail;

4 import org.quartz.Scheduler;

5 import org.quartz.Trigger;

6 import org.quartz.TriggerBuilder;

7 import org.quartz.impl.StdSchedulerFactory;

8 import java.util.Random;

9 public class CronTriggerExample

10 {

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

12 {

13 //创建工作对象

14 JobDetail job = JobBuilder.newJob(MailJob.class)

15 .withIdentity(“dummyJobName”, “group1”).build();

16 //为了立即测试,可以使用下面的代码,每隔5秒钟执行一次

17 //int secDelta = 5;

18 //Trigger trigger = TriggerBuilder

19 // .newTrigger()

20 // .withIdentity(“dummyTriggerName”, “group1”)

21 // .withSchedule(

22 // CronScheduleBuilder.cronSchedule(“0/” + secDelta + ” * * * * ?”))

23 // .build();

24 //在每天早上的9点多(不超过3分钟)执行

25 Random rand = new Random(System.currentTimeMillis());

26 int secDelta = rand.nextInt(60 * 3);

27 //创建触发器对象

28 Trigger trigger = TriggerBuilder

29 .newTrigger()

30 .withIdentity(“dummyTriggerName”, “group1”)

31 .withSchedule(

32 CronScheduleBuilder.cronSchedule(secDelta + ” 0 9 ? * SUN-SAT”))

33 .build();

34

35 Scheduler scheduler = new StdSchedulerFactory().getScheduler();

36 scheduler.start();

37 //将触发器与工作关联起来

38 scheduler.scheduleJob(job, trigger);

39 }

40 }

发邮件依赖的包:activation.jar,mail.jar

将发邮件依赖的包和quartz下载得到的lib路径下的jar包全部放在mylib路径下,mylib路径与java文件位于同一个目录。编译和运行时,可以使用命令:

set classpath=mylib/*;.;

javac CronTriggerExample.java

java CronTriggerExample

如何实现每天定时发送邮件?

有时候我们或许会遇到想在某一个时刻给别人发送一封邮件,就像是在生日的时候,但是我们又怕到时候忘记了,这时就应该使用发送定时邮件的功能,定时邮件的具体使用请看下面。

当然首先应该做的就是登陆你的邮箱,这都是最基本的操作了。首先新建一封邮件,填写好你要发送的主题、内容、收件人等信息,然后点击工具栏的“选项按键”。在弹出的对话框中在“传递不早于”前面打上勾,然后在后面的下拉菜单中选择要发送这封邮件日期和时间。最后点击发送按键,这个时候这封信就在你的发件箱中呆着了。接下来将Outlook自动收发信件的功能打开:点击“工具/选项/邮件设置/发送/接受”,将“安排自动发送/接受的时间间隔为”前面打上勾,然后输入一个你希望的间隔时间。这样到了邮件设置的时间后就会自动发送这封提示邮件了。再说一下具体流程:

1登陆邮箱之后按照你的正常步骤来写一封邮件,点击【写信】之后进入你的编辑页面。

2在收件人中输入你所要发送的收件人的邮箱,然后正文部分输入你想要和他说的话,将页3面拉倒最下方你会发现有一个【定时发送】按钮,然后你点击这一个按钮。

4然后就会出现一个让你选择发送时间的小对话框,在里面你选择你要发送的时间,点击【发送】即可。

5如果你发现你的邮件有错误或者是有添加的部分,那么你也不要着急,这封邮件还没有发送出去,你可以到草稿箱里面找到它。

6然后你点击你的邮件进入查看,在里面你可以修改发送时间,也可以将邮件删除在重新编辑一封邮件来发送。

就这样,一封定时邮件就产生了,是不是很简单呢?

关于javajob定时发送邮件和java发送邮件附件的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年4月4日 00:06:10
下一篇 2024年4月4日 00:13:18

相关推荐

  • java使用qq发送邮件,java发送电子邮件

    java如何使用ssl连接qq邮箱 1、//设置邮件内容 message.setText(内容为: 这是第一封java发送来的邮件。 2、电子邮件地址:您的QQ邮箱的完整邮件地址 如果您的电子邮件客户端支持SSL,可以在设置中选择使用SSL。 3、设置IMAP服务,使用SSL的通用配置如下:接收邮件服务器:imap.qq.com,使用SSL,端口号993。发…

    2024年5月15日
    3600
  • javamail接收邮件附件,java邮件发送带附件

    帮忙找一下javaMail的问题 主要原因是邮件客户端连接异常:IP地址连接异常;用户名密码错误。可根据自己使用情况按照出现的原因调整一下即可正常使用。JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。 import javax.mail.*;import javax.mail.internet.*;import java.util.*;i…

    2024年5月15日
    3900
  • javamail群发邮件,java批量发送邮件

    java中如何实现公司邮箱发送邮件配置 SMTP协议 用户连上邮件服务器后,要想给它发送一封电子邮件,需要遵循一定的通迅规则,SMTP协议就是用于定义这种通讯规则的。因而,通常我们也把处理用户smtp请求(邮件发送请求)的邮件服务器称之为SMTP服务器。 import java.util.Date; import java.util.HashMap; imp…

    2024年5月11日
    4600
  • java邮件附件,java邮件附件加密

    java邮件发送附件必须本地文件吗 1、然后在写邮件界面中,点击如图箭头所示。会出现选项,可以点击“本地文件”。然后在自己手机文件路径里,找到发送的图片,视频,音频。如果选择文件超过50M,可以使用超大附件进行发送。 2、添加附件。点击“添加附件”,在弹出的对话框中找到附件存放的地址,选中目标附件后,点击“打开”按钮添加附件。写好邮件的主题。附件添加后,主题…

    2024年5月9日
    3600
  • 推广网站的14个方法,每周给你的用户发送邮件资讯

    将你的网站提交到搜索引擎,开展一个抽奖活动,每周给你网站注册者发送电子邮件通讯,给其他的网站提供免费的文章,和有相互补充作用的网站交换链接 1、将你的网站提交到搜索引擎,这样你的网站就有了最大暴光率的可能性; 2、如果你期望得到更多的暴光机会,你可以付费进行搜索引擎营销 (Search Engine Marketing) 。当浏览者用固定的关键词搜索时,就会…

    2024年5月3日
    5100
  • java定时发送邮件功能(java定时发送短信)

    今天给各位分享java定时发送邮件功能的知识,其中也会对java定时发送短信进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧! 本文目录一览: 1、java 指定某个时间发送邮件2、关于java定时发送邮件,类似于QQ邮箱中的定时发送功能3、java怎么定时发送邮件,比如5分钟后。要具体的代码。发件人和收件人这些都可定死。4、java s…

    2024年4月3日
    5000
  • java发送邮件pop(java发送邮件的简单实现)

    本篇文章给大家谈谈java发送邮件pop,以及java发送邮件的简单实现对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、java 发hotmail邮件2、java mail发送报错:535 5.7.3 ,这是为什么?3、POP在邮箱里面指的是什么4、JAVA发送邮件提示530怎么办 java 发hotmail邮件 接收邮件服务器(…

    2024年3月30日
    5500
  • javamailimap接收邮件(java发送邮件)

    今天给各位分享javamailimap接收邮件的知识,其中也会对java发送邮件进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧! 本文目录一览: 1、怎么样使用JavaMail发送和接收邮件2、用javamail接收企业邮箱里的邮件信息的问题3、javamail接收邮件报错4、javamail使用IMAP协议接受QQ邮件不成功,大虾们帮…

    2024年3月29日
    5100
  • java读取邮件乱码问题(发送邮件乱码)

    今天给各位分享java读取邮件乱码问题的知识,其中也会对发送邮件乱码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧! 本文目录一览: 1、Java项目通过发送邮件接收一串乱的东西、有时候发送方也会乱2、java 接收邮件发生乱码3、java 接收邮件附件乱码 Java项目通过发送邮件接收一串乱的东西、有时候发送方也会乱 这是你发送邮件的…

    2024年3月28日
    5100
  • javamail用163发送邮件的简单介绍

    springboot用163邮箱、阿里云企业邮箱发送邮件的配置 springboot+JavaMail用163和阿里云企业邮箱的smtp服务都可以发送邮件,区别在于发送人的邮箱地址。用163免费邮箱,收件人看到的发件邮箱是XXX@163.com,用阿里云企业邮箱可以用自己的域名,例如account@mydomain.com。当然,也可以用其它的免费企业邮箱。…

    2024年3月27日
    5400

发表回复

登录后才能评论



关注微信