導航:首頁 > 編程語言 > java發qq郵件

java發qq郵件

發布時間:2023-12-17 10:21:24

java mail 發郵件 1000 封以上 怎麼讓郵件快速發送

...
String to="[email protected],[email protected],[email protected]";
InternetAddress[] toList = new InternetAddress().parse(to);
msg.setRecipients(Message.RecipientType.TO, toList);
...
Transport.send(msg);
或者直連郵件網關,並由郵件網關直接轉發至收件箱所在的伺服器,因此發送速度是基本不受限的。如果沒有郵件網關,同時又不想自己完成相關功能,那麼建議不要只讓一台郵件伺服器轉發你的郵件,而是多連幾台,將自己的郵件平均分配到每台郵件伺服器上,這樣就不會由於發送過多,而被拒了。

至於處理能力,可以提幾點關於提高發送能力的建議
1.SMTP協議是支持長連接的協議,同時mail.jar實現了SMTP協議的連接、郵件發送及連接斷開,至於對連接的維護沒有涉及;同時Spring中的郵件支持是通過封裝mail.jar實現的,但只提供了單筆發送和批量發送(均為短連接)。
2.如果使用長連接,建議再引入連接池,那樣既便於維護連接,又可以提高連接的使用率。

Ⅱ java如何實現批量發送郵件

1.要想效率發郵件可以用多線程每個線程發指定批量的郵件
2.要想不被查封為垃圾郵件,這個就有很多地方要注意了
郵件的內容不要含有太多圖片信息,內容盡量簡潔,不要涉及一些淫穢色情的東西。
不要向同一個人發送同樣的郵件。
發郵件時ip最好用代理每發送個50封郵件就換個ip,因為郵件伺服器也會檢查你ip在這么短時間發了這么多郵件也會認為你是惡意群發。
最好能加入郵件接收者的白名單或訂閱名單

Ⅲ 如何使用Java發送qq郵件

1新建Java項目
2然唯液後再項目下新建一個lib文件夾,復制需要的那個兩個jar包到lib下

3選擇 activation.jar和mail.jar,右鍵添加Build path

4用QQ給QQ發送郵件,發送方得開啟指旦物第三方登錄,也就是授權登錄,需要開始POP3和SMTP,還有點擊生成授權碼,下面是操作截圖

5編寫Java代碼

6運行,最後顯示 250 Mail OK即發遲肆送成功

7接收方的QQ會收到郵件

Ⅳ 關於java定時發送郵件,類似於QQ郵箱中的定時發送功能

建議方法:

  1. 如果你的java會死亡/失去控制, 請用系統的任務調度來發送郵件;

  2. 如果你的java由jboss等之類的託管, 用jboss內部的任務調度來發送郵件.

方法1:

Windws 平台, 在task中添加一個 任務, 命令行執行java 代碼即可, 這樣可靠性由操作系統保證;

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

Ⅳ java 代碼發郵件怎麼添加附件

實現java發送郵件的過程大體有以下幾步:

准備一個properties文件,該文件中存放SMTP伺服器地址等參數。

利用properties創建一個Session對象

利用Session創建Message對象,然後設置郵件主題和正文

利用Transport對象發送郵件

需要的jar有2個:activation.jar和mail.jar發送附件,需要用到Multipart對象。

importjava.io.File;
importjava.io.IOException;
importjava.io.InputStream;
importjava.util.Properties;

importjavax.activation.DataHandler;
importjavax.activation.DataSource;
importjavax.activation.FileDataSource;
importjavax.mail.BodyPart;
importjavax.mail.Message;
importjavax.mail.MessagingException;
importjavax.mail.Multipart;
importjavax.mail.Session;
importjavax.mail.Transport;
importjavax.mail.internet.InternetAddress;
importjavax.mail.internet.MimeBodyPart;
importjavax.mail.internet.MimeMessage;
importjavax.mail.internet.MimeMultipart;
importjavax.mail.internet.MimeUtility;

{
privateMimeMessagemessage;
privateSessionsession;
privateTransporttransport;

privateStringmailHost="";
privateStringsender_username="";
privateStringsender_password="";

privatePropertiesproperties=newProperties();

/*
*初始化方法
*/
publicJavaMailWithAttachment(booleandebug){
InputStreamin=JavaMailWithAttachment.class.getResourceAsStream("MailServer.properties");
try{
properties.load(in);
this.mailHost=properties.getProperty("mail.smtp.host");
this.sender_username=properties.getProperty("mail.sender.username");
this.sender_password=properties.getProperty("mail.sender.password");
}catch(IOExceptione){
e.printStackTrace();
}

session=Session.getInstance(properties);
session.setDebug(debug);//開啟後有調試信息
message=newMimeMessage(session);
}

/**
*發送郵件
*
*@paramsubject
*郵件主題
*@paramsendHtml
*郵件內容
*@paramreceiveUser
*收件人地址
*@paramattachment
*附件
*/
publicvoiddoSendHtmlEmail(Stringsubject,StringsendHtml,StringreceiveUser,Fileattachment){
try{
//發件人
InternetAddressfrom=newInternetAddress(sender_username);
message.setFrom(from);

//收件人
InternetAddressto=newInternetAddress(receiveUser);
message.setRecipient(Message.RecipientType.TO,to);

//郵件主題
message.setSubject(subject);

//向multipart對象中添加郵件的各個部分內容,包括文本內容和附件
Multipartmultipart=newMimeMultipart();

//添加郵件正文
BodyPartcontentPart=newMimeBodyPart();
contentPart.setContent(sendHtml,"text/html;charset=UTF-8");
multipart.addBodyPart(contentPart);

//添加附件的內容
if(attachment!=null){
BodyPartattachmentBodyPart=newMimeBodyPart();
DataSourcesource=newFileDataSource(attachment);
attachmentBodyPart.setDataHandler(newDataHandler(source));

//網上流傳的解決文件名亂碼的方法,其實用MimeUtility.encodeWord就可以很方便的搞定
//這里很重要,通過下面的Base64編碼的轉換可以保證你的中文附件標題名在發送時不會變成亂碼
//sun.misc.BASE64Encoderenc=newsun.misc.BASE64Encoder();
//messageBodyPart.setFileName("=?GBK?B?"+enc.encode(attachment.getName().getBytes())+"?=");

//MimeUtility.encodeWord可以避免文件名亂碼
attachmentBodyPart.setFileName(MimeUtility.encodeWord(attachment.getName()));
multipart.addBodyPart(attachmentBodyPart);
}

//將multipart對象放到message中
message.setContent(multipart);
//保存郵件
message.saveChanges();

transport=session.getTransport("smtp");
//smtp驗證,就是你用來發郵件的郵箱用戶名密碼
transport.connect(mailHost,sender_username,sender_password);
//發送
transport.sendMessage(message,message.getAllRecipients());

System.out.println("sendsuccess!");
}catch(Exceptione){
e.printStackTrace();
}finally{
if(transport!=null){
try{
transport.close();
}catch(MessagingExceptione){
e.printStackTrace();
}
}
}
}

publicstaticvoidmain(String[]args){
JavaMailWithAttachmentse=newJavaMailWithAttachment(true);
Fileaffix=newFile("c:\測試-test.txt");
se.doSendHtmlEmail("郵件主題","郵件內容","[email protected]",affix);//
}
}

Ⅵ 用java來發送帶附件的郵件

用java來發送帶附件的郵件要翻譯的。

閱讀全文

與java發qq郵件相關的資料

熱點內容
流媒體伺服器有什麼用 瀏覽:171
安卓怎麼禁用前置攝像頭 瀏覽:48
android電視游戲 瀏覽:670
得物app用什麼方式出售 瀏覽:783
linuxandroid模擬器下載 瀏覽:971
php類常量訪問 瀏覽:586
視頻文件壓縮工具 瀏覽:13
什麼什麼佳人app 瀏覽:6
施耐德cfc編程 瀏覽:322
如何把pdf文件轉成圖片 瀏覽:538
張劍閱讀150篇pdf 瀏覽:359
拉卡拉收款寶app叫什麼名 瀏覽:340
c4d動態解壓 瀏覽:711
多個pdf合並為一個 瀏覽:314
程序中的編譯執行 瀏覽:34
plc控制與單片機控制 瀏覽:885
如何讓安卓手機操控電腦 瀏覽:189
電腦電銷加密電話號碼破解 瀏覽:507
世界史綱pdf 瀏覽:135
湖北社保年審app叫什麼名字 瀏覽:854