利用java实现邮箱群发功能
本文实例为大家分享了java实现邮箱群发的具体代码,供大家参考,具体内容如下
近来无事,在网上看了一些大牛文章,其中看到一篇比较好的,分享给大家!
下面是代码
邮箱实体
importjava.io.Serializable; /** *邮件实体类 */ publicclassMailimplementsSerializable{ /** *序列号 */ privatestaticfinallongserialVersionUID=-3562218214168975242L; /** *邮件编码s */ publicstaticfinalStringENCODEING="UTF-8"; /** *服务器地址 */ privateStringhost; /** *服务器端口号 */ privateStringportNumber; /** *发件人的邮箱 */ privateStringsender; /** *收件人的邮箱 */ privateStringreceiver; /** *发件人昵称 */ privateStringname; /** *账号 */ privateStringusername; /** *密码 */ privateStringpassword; /** *主题 */ privateStringsubject; /** *信息(支持HTML) */ privateStringmessage; publicStringgetHost(){ returnhost; } publicvoidsetHost(Stringhost){ this.host=host; } publicStringgetSender(){ returnsender; } publicStringgetPortNumber(){ returnportNumber; } publicvoidsetPortNumber(StringportNumber){ this.portNumber=portNumber; } publicvoidsetSender(Stringsender){ this.sender=sender; } publicStringgetReceiver(){ returnreceiver; } publicvoidsetReceiver(Stringreceiver){ this.receiver=receiver; } publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ this.name=name; } publicStringgetUsername(){ returnusername; } publicvoidsetUsername(Stringusername){ this.username=username; } publicStringgetPassword(){ returnpassword; } publicvoidsetPassword(Stringpassword){ this.password=password; } publicStringgetSubject(){ returnsubject; } publicvoidsetSubject(Stringsubject){ this.subject=subject; } publicStringgetMessage(){ returnmessage; } publicvoidsetMessage(Stringmessage){ this.message=message; } }
工具类
importorg.apache.commons.mail.EmailException; importorg.apache.commons.mail.HtmlEmail; publicclassMailUtil{ publicbooleansend(Mailmail){ //发送email对象 HtmlEmailemail=newHtmlEmail(); 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(); returntrue; }catch(EmailExceptione){ e.printStackTrace(); returnfalse; } } }
开始
importjava.util.Random; publicclassSimpleEmailClient{ publicstaticvoidmain(String[]args)throwsInterruptedException{ Mailmail=newMail(); 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(inti=0;i<1000;i++){ //Thread.sleep(2000); intmax1=99999; intmin1=10000; Randomrandom=newRandom(); intf=random.nextInt(max1)%(max1-min1+1)+min1; intmax2=9999; intmin2=1000; Randomrandom2=newRandom(); ints=random2.nextInt(max2)%(max2-min2+1)+min2; Stringaccount=""+f+""+s+"@qq.com"; mail.setReceiver(account);//接收人 System.out.println(account); if(newMailUtil().send(mail)){ System.out.println("发送成功"); }else{ System.out.println("发送失败"); } } } }
for循环是为了群发
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。