利用java实现邮箱群发功能

本文实例为大家分享了java实现邮箱群发的具体代码,供大家参考,具体内容如下

近来无事,在网上看了一些大牛文章,其中看到一篇比较好的,分享给大家!

下面是代码

邮箱实体

import java.io.Serializable;
/**
 * 邮件实体类
 */
public class Mail implements Serializable {
 /**
  * 序列号
  */
 private static final long serialVersionUID = -3562218214168975242L;
 /**
  * 邮件编码s
  */
 public static final String ENCODEING = "UTF-8";
 /**
  * 服务器地址
  */
 private String host;
 /**
  * 服务器端口号
  */
 private String portNumber;
 /**
  * 发件人的邮箱
  */
 private String sender;
 /**
  * 收件人的邮箱
  */
 private String receiver;
 /**
  * 发件人昵称
  */
 private String name;
 /**
  * 账号
  */
 private String username;
 /**
  * 密码
  */
 private String password;
 /**
  * 主题
  */
 private String subject;
 /**
  * 信息(支持HTML)
  */
 private String message;  

 public String getHost() {
  return host;
 }  

 public void setHost(String host) {
  this.host = host;
 }  

 public String getSender() {
  return sender;
 }  

 public String getPortNumber() {
  return portNumber;
 } 

 public void setPortNumber(String portNumber) {
  this.portNumber = portNumber;
 } 

 public void setSender(String sender) {
  this.sender = sender;
 }  

 public String getReceiver() {
  return receiver;
 }  

 public void setReceiver(String receiver) {
  this.receiver = receiver;
 }  

 public String getName() {
  return name;
 }  

 public void setName(String name) {
  this.name = name;
 }  

 public String getUsername() {
  return username;
 }  

 public void setUsername(String username) {
  this.username = username;
 }  

 public String getPassword() {
  return password;
 }  

 public void setPassword(String password) {
  this.password = password;
 }  

 public String getSubject() {
  return subject;
 }  

 public void setSubject(String subject) {
  this.subject = subject;
 }  

 public String getMessage() {
  return message;
 }  

 public void setMessage(String message) {
  this.message = message;
 }  

} 

工具类

import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail; 

public class MailUtil {  

 public boolean send(Mail mail) {
  //发送email对象
  HtmlEmail email = new HtmlEmail();
  try {
   //这里是SMTP发送服务器的名字
   email.setHostName(mail.getHost());
   //端口号不为空时,用户自定义的端口号为SMTP发送服务器端口号
   if (!"".equals(mail.getPortNumber())) {
    email.setSSLOnConnect(true);
    email.setSslSmtpPort(mail.getPortNumber());
   }
   //字符编码集的设置
   email.setCharset(Mail.ENCODEING);
   //收件人的邮箱
   email.addTo(mail.getReceiver());
   //发送人的邮箱
   email.setFrom(mail.getSender(), mail.getName());
   // 如果需要认证信息的话,设置认证:用户名-密码。分别为发件人在邮件服务器上的注册名称和密码
   email.setAuthentication(mail.getUsername(), mail.getPassword());
   // 要发送的邮件主题
   email.setSubject(mail.getSubject());
   // 要发送的信息,由于使用了HtmlEmail,可以在邮件内容中使用HTML标签
   email.setMsg(mail.getMessage());
   // 发送
   email.send();
   return true;
  } catch (EmailException e) {
   e.printStackTrace();
   return false;
  }
 }
} 

开始

import java.util.Random; 

public class SimpleEmailClient { 

 public static void main(String[] args) throws InterruptedException {
  Mail mail = new Mail();
  mail.setHost("smtp.qq.com"); // 设置邮件服务器,如果不用QQ邮箱的,自己找找看相关的
  mail.setPortNumber("465"); // 设置邮件服务器端口号,默认25
  mail.setSender("xxxx@qq.com"); // 发送人
  mail.setName("杨大侠"); // 发送人昵称
  mail.setSubject("好吃美味"); //发送主题
  mail.setMessage("好吃美味"); //发送内容
  mail.setUsername("xxxx@qq.com"); // 登录账号,一般都是和邮箱名一样
  mail.setPassword("********"); // QQ邮箱登录第三方客户端时,密码框请输入“授权码”进行验证。其他的密码具体查看邮件服务器的说明 

  for (int i = 0; i < 1000; i++) { 

   //Thread.sleep(2000); 

   int max1 = 99999;
   int min1 = 10000;
   Random random = new Random();
   int f = random.nextInt(max1)%(max1-min1+1) + min1; 

   int max2 = 9999;
   int min2 = 1000;
   Random random2 = new Random();
   int s = random2.nextInt(max2)%(max2-min2+1) + min2;
   String account = "" + f + "" + s + "@qq.com"; 

   mail.setReceiver(account); // 接收人
   System.out.println(account);
   if (new MailUtil().send(mail)) {
    System.out.println("发送成功");
   } else {
    System.out.println("发送失败");
   }
  } 

 }
} 

for循环是为了群发

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • java实现163邮箱发送邮件到qq邮箱成功案例

    下载和上传附件.发送短信和发送邮件,都算是程序中很常用的功能,之前记录了文件的上传和下载还有发送短信,由于最近比较忙,邮件发送的功能就没有时间去弄,现在终于成功以163邮箱发送邮件到qq邮箱,以下是相关代码,具体解释可以参考代码中注释: package test; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Properties; import java.ut

  • java mail使用qq邮箱发邮件的配置方法

    程序入口:Test_Email_N.java 复制代码 代码如下: import java.io.IOException;import java.util.Date;import java.util.Properties; import javax.mail.Authenticator;import javax.mail.BodyPart;import javax.mail.Message;import javax.mail.MessagingException;import javax.mai

  • Java基于JavaMail实现向QQ邮箱发送邮件

    最近项目在做新闻爬虫,想实现这个功能:爬虫某个页面失败后,把这个页面的 url 发到邮箱.最终实现的效果图如下,后期可以加上过滤标签.失败状态码等,方便分类搜索异常. 开发人员可以根据邮件里的 url 和堆栈信息,分析爬虫失败的原因. 是不是服务器 down 了? 还是爬虫的 Dom 解析没有解析到内容? 还是正则表达式对于这个页面不适用? 开启SMTP服务 在 QQ 邮箱里的 设置->账户里开启 SMTP 服务 注意开启完之后,QQ 邮箱会生成一个授权码,在代码里连接邮箱使用这个授权码而不是原

  • 利用java实现邮箱群发功能

    本文实例为大家分享了java实现邮箱群发的具体代码,供大家参考,具体内容如下 近来无事,在网上看了一些大牛文章,其中看到一篇比较好的,分享给大家! 下面是代码 邮箱实体 import java.io.Serializable; /** * 邮件实体类 */ public class Mail implements Serializable { /** * 序列号 */ private static final long serialVersionUID = -356221821416897524

  • Java实现邮箱发送功能实例(阿里云邮箱推送)

    前言 绑定阿里云域名,创建域名账户,并配置解析域名账户,获得发送邮箱的权限,上限两百封,超出要¥- 阿里云邮件推送控制台 https://www.aliyun.com/product/directmail 申请邮箱并解析域名 https://yq.aliyun.com/articles/707997 1. 邮箱信息实体类 package cn.bitqian.mail.test; /** * 邮件内容实体类 * @author echo lovely * @date 2020/9/18 15:4

  • Python如何利用IMAP实现邮箱客户端功能

    目录 概述 什么是IMAP? IMAP和POP有什么区别? 如何设置IMAP服务的SSL加密方式? 涉及知识点 示例效果图 核心代码 邮箱设置 总结 概述 在日常工作生活中,都是利用个人或公司的邮箱客户端进行收发邮件,那么如何打造一款属于自己的邮箱客户端呢?本文以一个简单的小例子,简述如何通过Pyhton的imaplib和email两大模块,实现邮件的接收并展示,仅供学习分享使用,如有不足之处,还请指正. 什么是IMAP? IMAP,即Internet Message Access Protoc

  • 利用Java+OpenCV实现拍照功能

    由于项目需要拍照,看了好多的资料不是C语言的就是python,开始用的JavaCv但是有好多问题,所以改成了OpenCv 只能硬着上了,查了好的网上的资料,终于找到了 依赖jar包:只有一个OpenCv的jar包,可以直接从官网上下载 下面上代码 import java.awt.Graphics; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.image.Buffered

  • 利用Java实现天气预报播报功能

    目录 实验代码 WeatherState.java Weather.java WeatherForecast.java CloudyLittleState.java CloudyDayState.java HeavyRainState.java LightRainState.java 运行结果 实验代码 WeatherState.java package lab2; public interface WeatherState { public void showState(); } Weathe

  • 利用Java实现文件锁定功能

    目录 题目描述-文件锁定功能 1.题目 2.解题思路 3.代码详解 多学一个知识点 题目描述-文件锁定功能 1.题目 在操作文件时,有时会遇到一个问题:该文件已经被另一个程序占用,打开失败.这是因为另一个程序在编辑此文件. 实现:对D盘的xiaoxuzhu.txt文件进行锁定1分钟,1分钟后解锁. 2.解题思路 创建一个类:EncryptInput 使用FileChannel类的tryLock()获取文件锁定,如果没获取到文件锁,会返回null.可以通过这个返回值判断是否有没有被锁定. File

  • 利用Java+MySQL实现附近功能实例

    前言 在移动互联网广泛发展的今天,APP开发成为许多企业进入移动互联网的首选,笔者开发了众多的APP,发现很多app都有这样一个功能,那就是获取附近的人,怎么样来获取附近的人呢?其实很简单,就是要时刻记录用户的坐标(经纬度)信息到数据库中,然后根据当前用户的坐标,搜索数据库中,和当前坐标位置在 一定范围内的所有用户. 其实对于那种地理位置不会变的两个主体之间的距离,最好是直接将结果静态化.也就是直接写死在配置里. 比如,找自己家附近的地铁站. 这种情况下,一般而言"家"这个主体是不会轻

  • Java实现读写文件功能的代码分享

    目录 读文件 写文件 主函数 实现效果 下面是利用Java实现读写文件功能的示例代码 读文件 TextRead.java import java.io.BufferedReader; import java.io.File; import java.io.FileReader; public class TextRead { /** * 读取txt文件的内容 * @param file 想要读取的文件对象 * @return 返回文件内容 */ public static String txt2

  • 基于Java实现简单的邮件群发功能

    目录 pom文件引入第三方依赖 java代码如下 运行测试 pom文件引入第三方依赖 <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4</version> </dependency> <!--lombok--> <dependency> <groupId>

  • java、php、C#、asp实现短信群发功能的方法

    本文实例讲述了java.php.C#.asp实现短信群发功能的方法.分享给大家供大家参考.具体如下: 首先去http://www.smschinese.cn/上下载jar包以及注册用户,然后调用api接口,取得秘钥 1. ASP 调用例子 <% '常用函数 '输入url目标网页地址,返回值getHTTPPage是目标网页的html代码 function getHTTPPage(url) dim Http set Http=server.createobject("MSXML2.XMLHTT

随机推荐