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

java實現發郵件

發布時間:2023-03-31 09:07:04

❶ 如何使用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寫一個郵件發送代碼

public boolean mainto()
{
boolean flag = true;

//建立郵件會話
Properties pro = new Properties();
pro.put("mail.smtp.host","smtp.qq.com");//存儲發送郵件的伺服器
pro.put("mail.smtp.auth","true"); //通過伺服器驗證

Session s =Session.getInstance(pro); //根據屬性新建一個郵件會話
//s.setDebug(true);

//由郵件會話新建一個消息對象
MimeMessage message = new MimeMessage(s);

//設置郵件
InternetAddress fromAddr = null;
InternetAddress toAddr = null;

try
{
fromAddr = new InternetAddress(451144426+"@qq.com"); //郵件發送地址
message.setFrom(fromAddr); //設置發送地址

toAddr = new InternetAddress("[email protected]"); //郵件接收地址
message.setRecipient(Message.RecipientType.TO, toAddr); //設置接收地址

message.setSubject(title); //設置郵件標題
message.setText(content); //設置郵件正文
message.setSentDate(new Date()); //設置郵件日期

message.saveChanges(); //保存郵件更改信息

Transport transport = s.getTransport("smtp");
transport.connect("smtp.qq.com", "451144426", "密碼"); //伺服器地址,郵箱賬號,郵箱密碼
transport.sendMessage(message, message.getAllRecipients()); //發送郵件
transport.close();//關閉

}
catch (Exception e)
{
e.printStackTrace();
flag = false;//發送失敗
}

return flag;
}

這是一個javaMail的郵件發送代碼,需要一個mail.jar

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

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

❹ java 發送郵件

要兩個java文件 還有一個mail.jar是不是只能用javamail誰也不敢說

第一個:

public class Constant {

public static final String mailAddress ="用戶名@163.com";
public static final String mailCount ="用戶名";
public static final String mailPassword ="密碼";
public static final String mailServer ="smtp.163.com";
//pukeyouxintest,

}

第二個:

import java.util.Date;
import java.util.Properties;

import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class SendMail {
/**
* 發送簡單郵件
* @param str_from:發件人地址
* @param str_to:收件人地址
* @param str_title:郵件標題
* @param str_content:郵件正文
*/
public static void send(String str_from,String str_to,String str_title,String str_content) {

// str_content="<a href='www.163.com'>html元素</a>"; //for testing send html mail!

try {
//建立郵件會話
Properties props=new Properties(); //用來在一個文件中存儲鍵-值對的,其中鍵和值是用等號分隔的,
//存儲發送郵件伺服器的信息
props.put("mail.smtp.host",Constant.mailServer);
//同時通過驗證
props.put("mail.smtp.auth","true");
//根據屬性新建一個郵件會話
Session s=Session.getInstance(props);
s.setDebug(true); //有他會列印一些調試信息。

//由郵件會話新建一個消息對象
MimeMessage message=new MimeMessage(s);

//設置郵件
InternetAddress from= new InternetAddress(str_from); //[email protected]
message.setFrom(from); //設置發件人的地址
//
// //設置收件人,並設置其接收類型為TO
InternetAddress to=new InternetAddress(str_to); //[email protected]
message.setRecipient(Message.RecipientType.TO, to);

//設置標題
message.setSubject(str_title); //java學習

//設置信件內容
// message.setText(str_content); //發送文本郵件 //你好嗎?
message.setContent(str_content, "text/html;charset=gbk"); //發送HTML郵件 //<b>你好</b><br><p>大家好</p>
//設置發信時間
message.setSentDate(new Date());

//存儲郵件信息
message.saveChanges();

//發送郵件
Transport transport=s.getTransport("smtp");
//以smtp方式登錄郵箱,第一個參數是發送郵件用的郵件伺服器SMTP地址,第二個參數為用戶名,第三個參數為密碼
transport.connect(Constant.mailServer,Constant.mailCount,Constant.mailPassword);
//發送郵件,其中第二個參數是所有已設好的收件人地址
transport.sendMessage(message,message.getAllRecipients());
transport.close();

} catch (Exception e) {
e.printStackTrace();
}
}

public static void main(String[] args) {
//測試用的,你吧你想寫的內容寫上去就行
send(Constant.mailAddress,"收件人郵箱","標題","<b>內容</b>");
}
}

然後把mail.jar導入,就可以了,我用的是163 的,其他的吧相應的伺服器改一下就行了

❺ JAVA 如何實現群發郵件(1000封以上)謝謝!

剛好我也在學習,網上找了些:
郵件群發:

收件人的地址設置為tomail i的形式,利用For循環向這些地址發送郵件,以實現群發的目的。
利用Address類設置郵件信息的收件人和發件人信息,在創建了郵件地址類後,通過message的setFrom()方法設置郵件的發件人,代碼如下:
message.setFrom(from_mail);
設置收件人地址時使用setRecipient()方法設置收信人地址,代碼如下:
message.setRecipient(type,address);
參數type為收件人類型。可以使用以下3個常量來區分收件人的類型:
1)Message.RecipientType.TO--發送。
2)Message.RecipientType.CC--抄送。
3)Message.RecipientType.BCC--暗 謝謝,請採納!

❻ 如何用java實現發送html格式的郵件

首先Java發送郵件需要用到JavaMail,先到Oracle官網上下載好最新版本的JavaMail(剛才看了一下,最新是1.5.3),把下載的這個jar文件放到classpath里(如果是Web項目,就放到WEB-INF/lib目錄下。

JavaMail主要支持發送純文本的和html格式的郵件。

發送html格式的郵件的一個常式如下:

importjavax.mail.internet.InternetAddress;
importjavax.mail.internet.MimeMessage;
importjavax.mail.internet.MimeUtility;
importjavax.mail.Session;
importjavax.mail.MessagingException;
importjavax.mail.Transport;

publicclassSendHtmlMail{
publicstaticvoidsendMessage(StringsmtpHost,
Stringfrom,Stringto,
Stringsubject,StringmessageText)
throwsMessagingException,java.io.UnsupportedEncodingException{

//Step1:Configurethemailsession
System.out.println("Configuringmailsessionfor:"+smtpHost);
java.util.Propertiesprops=newjava.util.Properties();
props.setProperty("mail.smtp.auth","true");//指定是否需要SMTP驗證
props.setProperty("mail.smtp.host",smtpHost);//指定SMTP伺服器
props.put("mail.transport.protocol","smtp");
SessionmailSession=Session.getDefaultInstance(props);
mailSession.setDebug(true);//是否在控制台顯示debug信息

//Step2:Constructthemessage
System.out.println("Constructingmessage-from="+from+"to="+to);
InternetAddressfromAddress=newInternetAddress(from);
InternetAddresstoAddress=newInternetAddress(to);

MimeMessagetestMessage=newMimeMessage(mailSession);
testMessage.setFrom(fromAddress);
testMessage.addRecipient(javax.mail.Message.RecipientType.TO,toAddress);
testMessage.setSentDate(newjava.util.Date());
testMessage.setSubject(MimeUtility.encodeText(subject,"gb2312","B"));

testMessage.setContent(messageText,"text/html;charset=gb2312");
System.out.println("Messageconstructed");

//Step3:Nowsendthemessage
Transporttransport=mailSession.getTransport("smtp");
transport.connect(smtpHost,"webmaster","password");
transport.sendMessage(testMessage,testMessage.getAllRecipients());
transport.close();

System.out.println("Messagesent!");
}

publicstaticvoidmain(String[]args){

StringsmtpHost="localhost";
Stringfrom="[email protected]";
Stringto="[email protected]";
Stringsubject="html郵件測試";//subjectjavamail自動轉碼

StringBuffertheMessage=newStringBuffer();
theMessage.append("<h2><fontcolor=red>這倒霉孩子</font></h2>");
theMessage.append("<hr>");
theMessage.append("<i>年年失望年年望</i>");
try{
SendHtmlMail.sendMessage(smtpHost,from,to,subject,theMessage.toString());
}
catch(javax.mail.MessagingExceptionexc){
exc.printStackTrace();
}
catch(java.io.){
exc.printStackTrace();
}
}
}


JavaMail是封裝了很多郵件操作的,所以使用起來不很困難,建議你到JavaMail官網看一下API或下載Java Doc API文檔。

❼ 如何寫一個JAVA類可以實現郵件發送功能,也可以實現群發功能

用java做也可以,就是效率太低了,麻煩。
用.net做這個嵌入模塊吧,很容易的。net提供的類庫很方便的實現這些小功能。

❽ Java收發郵件過程中具體的功能是怎麼實現的

1.SMTP協議

用戶連上郵件伺服器後,要想給它發送一封電子郵件,需要遵循一定的通迅規則,SMTP協議就是用於定義這種通訊規則的。

因而,通常我們也把處理用戶smtp請求(郵件發送請求)的郵件伺服器稱之為SMTP伺服器。(25)

2.POP3協議

同樣,用戶若想從郵件伺服器管理的電子郵箱中接收一封電子郵件的話,他連上郵件伺服器後,也需要遵循一定的通迅格式,POP3協議用於定義這種通訊格式。

因而,通常我們也把處理用戶pop3請求(郵件接收請求)的郵件伺服器稱之為POP3伺服器。(110)


下圖用於演示兩帳戶相互發送郵件的過程

packagecn.e.dlmu.send;

importjava.util.Properties;

importjavax.activation.DataHandler;
importjavax.activation.FileDataSource;
importjavax.mail.Message;
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;

publicclassSendMail{

publicstaticvoidmain(String[]args)throwsException{



Propertiesprop=newProperties();
//連接的郵件伺服器的主機名
prop.setProperty("mail.smtp.host","smtp.sina.com.cn");
//發送郵件的協議
prop.setProperty("mail.transport.protocol","smtp");
//是否向郵件伺服器提交認證
prop.setProperty("mail.smtp.auth","true");

//創建session
Sessionsession=Session.getInstance(prop);
session.setDebug(true);
//得到transport
Transportts=session.getTransport();
//連接郵件伺服器
ts.connect("smtp.sina.com.cn","[email protected]","xxxxx");
//發送郵件
MimeMessagemessage=createMessage(session);
ts.sendMessage(message,message.getAllRecipients());
ts.close();
}

(Sessionsession)throwsException{

MimeMessagemessage=newMimeMessage(session);

//設置郵件的基本信息
message.setFrom(newInternetAddress("[email protected]"));
message.setRecipient(Message.RecipientType.TO,newInternetAddress("[email protected]"));
message.setSubject("test");

//正文
MimeBodyParttext=newMimeBodyPart();
//設置charaset可以解決中文正文的亂碼問題,內嵌可下載的圖片
text.setContent("你好xxx,<imgsrc='c:/dog.jpg'/>測試成功!<br/><imgsrc='cid:aaa.jpg'/>","text/html;charset=gbk");
//圖片1
MimeBodyPartimage=newMimeBodyPart();
image.setDataHandler(newDataHandler(newFileDataSource("src/88.jpg")));
image.setContentID("aaa.jpg");
//附件
MimeBodyPartattach=newMimeBodyPart();
DataHandlerdh=newDataHandler(newFileDataSource("src/javamail架包.jar"));
attach.setDataHandler(dh);
//解決文件中文亂碼問題
attach.setFileName(MimeUtility.encodeText(dh.getName()));

//描述正文和圖片的關系
MimeMultipartmp=newMimeMultipart();
mp.addBodyPart(text);
mp.addBodyPart(image);
mp.setSubType("related");

//描述正文和附件
MimeMultipartmp2=newMimeMultipart();
mp2.addBodyPart(attach);
//將正文封裝為一個body
MimeBodyPartcontent=newMimeBodyPart();
content.setContent(mp);

mp2.addBodyPart(content);
mp2.setSubType("mixed");

message.setContent(mp2);
message.saveChanges();

returnmessage;
}

}

❾ java在linux下調用smtp協議發送郵件

你只是發郵件不是做郵件伺服器吧?這樣的話 在linux和window沒有區別....不然java都不好意思說自己是跨平台的了
JAVA郵件發送的大致過程是這樣的的:
1、構建一個繼承自javax.mail.Authenticator的具體類,並重寫裡面的getPasswordAuthentication()方法。此類是用作登錄校驗的,以確保你對該郵箱有發送郵件的權利。
2、構建一個properties文件,該文件中存放SMTP伺服器地址等參數。
3、通過構建的properties文件和javax.mail.Authenticator具體類來創建一個javax.mail.Session。Session的創建,就相當於登錄郵箱一樣。剩下的自然就是新建郵件。
4、構建郵件內容,一般是javax.mail.internet.MimeMessage對象,並指定發送人,收信人,主題,內容等等。
5、使用javax.mail.Transport工具類發送郵件。
參考地址http://www.cnblogs.com/codeplus/archive/2011/10/30/2229391.html

閱讀全文

與java實現發郵件相關的資料

熱點內容
青春期2裡面的跳舞的歌 瀏覽:36
國產動作愛情片 瀏覽:419
韓國有部特種兵與護士的電影 瀏覽:661
《貪婪》中的日本女演員 瀏覽:477
男主得艾滋病的電影 瀏覽:806
罪孽船長泰國版在線觀看 瀏覽:193
外國電影一個黑男孩在深林 瀏覽:902
叔嫂不倫之戀電影 瀏覽:211
溫暖溫柔是哪部小說 瀏覽:203
穿越抗戰自立為軍閥的小說 瀏覽:601
韓國強殲電影有哪些 瀏覽:291
一女二三男小說穿越文 瀏覽:824
台灣用哪個軟體看電視 瀏覽:365
父親為救兒子像男人獻身的泰國電影 瀏覽:72
台灣民族片子 瀏覽:4
香港老公出軌電影 瀏覽:462
黑社會後生可畏國語 瀏覽:137
韓國肉肉電影在線觀看 瀏覽:345
中文版韓國倫理電影 瀏覽:397
皇上叫秦風女主是宮女的小說 瀏覽:912