界面自己寫一下就可以了,把相關(guān)的參數(shù)傳進(jìn)去就可以了。 這個(gè)是我以前寫的。用的javamail。 有main方法,測試一下自己的郵件,應(yīng)該沒問題的。希望可以幫到你。注意導(dǎo)入你需要的javamail.jar的包 -------------------------------------------------------------- package com.fourpane.mail; import java.util.Properties; import javax.mail.Address; import javax.mail.Flags; import javax.mail.Folder; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.NoSuchProviderException; import javax.mail.Session; import javax.mail.Store; import javax.mail.Transport; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; public class TestMail { public static void main(String[] args) { //TestMail.sendMail(); //TestMail.receiveMail(); TestMail.deleteMail(); } /** * send mail */ public static void sendMail() { String host = "smtp.sina.com";//郵件服務(wù)器 String from = "xingui5624@sina.com";//發(fā)件人地址 String to = "ilovenumen@vip.sina.com";//接受地址(必須支持pop3協(xié)議) String userName = "xingui5624";//發(fā)件人郵件名稱 String pwd = "******";//發(fā)件人郵件密碼 Properties props = new Properties(); props.put("mail.smtp.host", host); props.put("mail.smtp.auth", "true"); Session session = Session.getDefaultInstance(props); session.setDebug(true); MimeMessage msg = new MimeMessage(session); try { msg.setFrom(new InternetAddress(from)); msg.addRecipient(Message.RecipientType.TO, new InternetAddress(to));//發(fā)送 msg.setSubject("我的測試...........");//郵件主題 msg.setText("測試內(nèi)容。。。。。。。");//郵件內(nèi)容 msg.saveChanges(); Transport transport = session.getTransport("smtp"); transport.connect(host, userName, pwd);//郵件服務(wù)器驗(yàn)證 transport.sendMessage(msg, msg.getRecipients(Message.RecipientType.TO)); System.out.println("send ok..........................."); } catch (AddressException e) { e.printStackTrace(); } catch (MessagingException e) { e.printStackTrace(); } } /** * receive mail */ public static void receiveMail() { String host = "pop3.sina.com"; String userName = "xingui5624"; String passWord = "******"; Properties props = new Properties(); Session session = Session.getDefaultInstance(props); session.setDebug(true); try { System.out.println("receive..............................."); Store store = session.getStore("pop3"); store.connect(host, userName,passWord);//驗(yàn)證 Folder folder = store.getFolder("INBOX");//取得收件文件夾 folder.open(Folder.READ_WRITE); Message msg[] = folder.getMessages(); System.out.println("郵件個(gè)數(shù):" + msg.length); for(int i=0; imsg.length; i++) { Message message = msg[i]; Address address[] = message.getFrom(); StringBuffer from = new StringBuffer(); /** * 此for循環(huán)是我項(xiàng)目測試用的 */ for(int j=0; jaddress.length; j++) { if (j 0) from.append(";"); from.append(address[j].toString()); } System.out.println(message.getMessageNumber()); System.out.println("來自:" + from.toString()); System.out.println("大小:" + message.getSize()); System.out.println("主題:" + message.getSubject()); System.out.println("時(shí)間::" + message.getSentDate()); System.out.println("==================================================="); } folder.close(true);//設(shè)置關(guān)閉 store.close(); System.out.println("receive over............................"); } catch (NoSuchProviderException e) { e.printStackTrace(); } catch (MessagingException e) { e.printStackTrace(); } } /** * delete mail */ public static void deleteMail() { String host = "pop3.sina.com"; String userName = "xingui5624"; String passWord = "******"; Properties props = new Properties(); //Properties props = System.getProperties();這種方法創(chuàng)建 Porperties 同上 Session session = Session.getDefaultInstance(props); session.setDebug(true); try { System.out.println("begin delete ..........."); Store store = session.getStore("pop3"); store.connect(host, userName, passWord);//驗(yàn)證郵箱 Folder folder = store.getFolder("INBOX"); folder.open(Folder.READ_WRITE);//設(shè)置我讀寫方式打開 int countOfAll = folder.getMessageCount();//取得郵件個(gè)數(shù) int unReadCount = folder.getUnreadMessageCount();//已讀個(gè)數(shù) int newOfCount = folder.getNewMessageCount();//未讀個(gè)數(shù) System.out.println("總個(gè)數(shù):" +countOfAll); System.out.println("已讀個(gè)數(shù):" +unReadCount); System.out.println("未讀個(gè)數(shù):" +newOfCount); for(int i=1; i=countOfAll; i++) { Message message = folder.getMessage(i); message.setFlag(Flags.Flag.DELETED, true);//設(shè)置已刪除狀態(tài)為true if(message.isSet(Flags.Flag.DELETED)) System.out.println("已經(jīng)刪除第"+i+"郵件。。。。。。。。。"); } folder.close(true); store.close(); System.out.println("delete ok................................."); } catch (NoSuchProviderException e) { e.printStackTrace(); } catch (MessagingException e) { e.printStackTrace(); } } /** * reply mail */ public static void replyMail() { //test } } 注意:此實(shí)現(xiàn)要求郵箱都支持pop3和smtp協(xié)議。現(xiàn)在老的網(wǎng)易郵箱都支持(2006年以前注冊的),所以的sina的 qq的都可以,雅虎的部分支持,具體的可以在網(wǎng)上搜下把。 ============================================================================== 還有一種辦法,也是我以前用到的。 其實(shí)最簡單的發(fā)郵件方式是用Apache的Common組件中的Email組件,封裝得很不錯(cuò)。 特簡單。首先從Sun的網(wǎng)站上下載JavaMail框架實(shí)現(xiàn),最新的版本是1.4.1。然后是JavaBeans Activation Framework,最新版本1.1.1,JavaMail需要這個(gè)框架。不過如果JDK是1.6的話就不用下了。1.6已經(jīng)包括了JavaBeans Activation Framework。 最后從 下載最新的Common Email,版本1.1。 首先在Eclipse中建立一個(gè)新的Java工程,然后把JavaMail和Common Email解壓縮,在工程中添加解壓縮出來的所有Jar的引用。 代碼: package org.fourpane.mail; import org.apache.commons.mail.EmailException; import org.apache.commons.mail.HtmlEmail; public class Mail { public static void main(String[] args) { //SimpleEmail email = new SimpleEmail(); HtmlEmail email = new HtmlEmail(); email.setHostName("smtp.163.com");//郵件服務(wù)器 email.setAuthentication("xingui5624", "******");//smtp認(rèn)證的用戶名和密碼 try { email.addTo("xingui5624@163.com");//收信者 email.setFrom("xingui5624@126.com", "******");//發(fā)信者 email.setSubject("xingui5624的測試郵件");//標(biāo)題 email.setCharset("UTF-8");//編碼格式 email.setMsg("這是一封xingui5624的測試郵件");//內(nèi)容 email.send();//發(fā)送 System.out.println("send ok.........."); } catch (EmailException e) { e.printStackTrace(); } } } 【如果發(fā)送不成功,可能是你的jar包問題,javamail 的jar可能和jdk1.5以上的j2ee的jar沖突。還有就是可能你的郵箱不支持pop3和smtp協(xié)議。】

為商南等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及商南網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站制作、做網(wǎng)站、商南網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
public boolean mainto()
{
boolean flag = true;
//建立郵件會話
Properties pro = new Properties();
pro.put("mail.smtp.host","smtp.qq.com");//存儲發(fā)送郵件的服務(wù)器
pro.put("mail.smtp.auth","true"); //通過服務(wù)器驗(yàn)證
Session s =Session.getInstance(pro); //根據(jù)屬性新建一個(gè)郵件會話
//s.setDebug(true);
//由郵件會話新建一個(gè)消息對象
MimeMessage message = new MimeMessage(s);
//設(shè)置郵件
InternetAddress fromAddr = null;
InternetAddress toAddr = null;
try
{
fromAddr = new InternetAddress(451144426+"@qq.com"); //郵件發(fā)送地址
message.setFrom(fromAddr); //設(shè)置發(fā)送地址
toAddr = new InternetAddress("12345367@qq.com"); //郵件接收地址
message.setRecipient(Message.RecipientType.TO, toAddr); //設(shè)置接收地址
message.setSubject(title); //設(shè)置郵件標(biāo)題
message.setText(content); //設(shè)置郵件正文
message.setSentDate(new Date()); //設(shè)置郵件日期
message.saveChanges(); //保存郵件更改信息
Transport transport = s.getTransport("smtp");
transport.connect("smtp.qq.com", "451144426", "密碼"); //服務(wù)器地址,郵箱賬號,郵箱密碼
transport.sendMessage(message, message.getAllRecipients()); //發(fā)送郵件
transport.close();//關(guān)閉
}
catch (Exception e)
{
e.printStackTrace();
flag = false;//發(fā)送失敗
}
return flag;
}
這是一個(gè)javaMail的郵件發(fā)送代碼,需要一個(gè)mail.jar
方法:
1.前提準(zhǔn)備工作:
首先,郵件的發(fā)送方要開啟POP3 和SMTP服務(wù)--即發(fā)送qq郵件的賬號要開啟POP3 和SMTP服務(wù)
2.開啟方法:
登陸qq郵箱
3.點(diǎn)擊 設(shè)置
4.點(diǎn)擊—-賬戶
5.找到:POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務(wù) —點(diǎn)擊開啟
6.送短信 —–點(diǎn)擊確定
7.稍等一會,很得到一個(gè)授權(quán)碼! –注意:這個(gè)一定要記住,一會用到
8.點(diǎn)擊保存修改 —OK 完成
9.java 測試代碼:
package cn.cupcat.test;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMessage.RecipientType;
public class SendmailUtil {
public static void main(String[] args) throws AddressException, MessagingException {
Properties properties = new Properties();
properties.put("mail.transport.protocol", "smtp");// 連接協(xié)議
properties.put("mail.smtp.host", "smtp.qq.com");// 主機(jī)名
properties.put("mail.smtp.port", 465);// 端口號
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.ssl.enable", "true");//設(shè)置是否使用ssl安全連接 ---一般都使用
properties.put("mail.debug", "true");//設(shè)置是否顯示debug信息 true 會在控制臺顯示相關(guān)信息
//得到回話對象
Session session = Session.getInstance(properties);
// 獲取郵件對象
Message message = new MimeMessage(session);
//設(shè)置發(fā)件人郵箱地址
message.setFrom(new InternetAddress("123456789@qq.com"));
//設(shè)置收件人地址 message.setRecipients( RecipientType.TO, new InternetAddress[] { new InternetAddress("987654321@qq.com") });
//設(shè)置郵件標(biāo)題
message.setSubject("這是第一封Java郵件");
//設(shè)置郵件內(nèi)容
message.setText("內(nèi)容為: 這是第一封java發(fā)送來的郵件。");
//得到郵差對象
Transport transport = session.getTransport();
//連接自己的郵箱賬戶
transport.connect("123456789@qq.com", "vvctybgbvvophjcj");//密碼為剛才得到的授權(quán)碼
//發(fā)送郵件 transport.sendMessage(message, message.getAllRecipients());
}
}
10.運(yùn)行就會發(fā)出郵件了。。。。
下面是我收到郵件的截圖,當(dāng)然我把源碼中的郵件地址都是修改了,不是真實(shí)的,你們測試的時(shí)候,可以修改能你們自己的郵箱。最后,祝你也能成功,如果有什么問題,可以一起討論!
注意事項(xiàng)
得到的授權(quán)碼一定要保存好,程序中要使用
使用Java應(yīng)用程序發(fā)送E-mail十分簡單,但是首先你應(yīng)該在你的機(jī)器上安裝JavaMail API 和Java Activation Framework (JAF) 。
你可以在 JavaMail (Version 1.2) 下載最新的版本。
你可以再 在JAF (Version 1.1.1)下載最新的版本。
下面是一個(gè)發(fā)郵件的代碼:
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class SendEmail
{
public static void main(String [] args)
{
// 收件人電子郵箱
String to = "abcd@gmail.com";
// 發(fā)件人電子郵箱
String from = "web@gmail.com";
// 指定發(fā)送郵件的主機(jī)為 localhost
String host = "localhost";
// 獲取系統(tǒng)屬性
Properties properties = System.getProperties();
// 設(shè)置郵件服務(wù)器
properties.setProperty("mail.smtp.host", host);
// 獲取默認(rèn)session對象
Session session = Session.getDefaultInstance(properties);
try{
// 創(chuàng)建默認(rèn)的 MimeMessage 對象
MimeMessage message = new MimeMessage(session);
// Set From: 頭部頭字段
message.setFrom(new InternetAddress(from));
// Set To: 頭部頭字段
message.addRecipient(Message.RecipientType.TO,
new InternetAddress(to));
// Set Subject: 頭部頭字段
message.setSubject("This is the Subject Line!");
// 設(shè)置消息體
message.setText("This is actual message");
// 發(fā)送消息
Transport.send(message);
System.out.println("Sent message successfully....");
}catch (MessagingException mex) {
mex.printStackTrace();
}
}
}
首先下載 JavaMail jar 包,并導(dǎo)入到項(xiàng)目中。下載地址
編寫代碼,代碼如下:
import?javax.mail.Authenticator;
import?javax.mail.Message;
import?javax.mail.MessagingException;
import?javax.mail.PasswordAuthentication;
import?javax.mail.Session;
import?javax.mail.Transport;
import?javax.mail.internet.AddressException;
import?javax.mail.internet.InternetAddress;
import?javax.mail.internet.MimeMessage;
public?class?App45?{
public?static?void?main(String[]?args)?throws?AddressException,?MessagingException?{
Properties?properties?=?System.getProperties();
properties.setProperty("mail.smtp.host",?"郵件發(fā)送服務(wù)器");
properties.setProperty("mail.smtp.auth",?"true");
Session?session?=?Session.getDefaultInstance(properties,?new?Authenticator()?{
@Override
protected?PasswordAuthentication?getPasswordAuthentication()?{
//?設(shè)置發(fā)件人郵件帳號和密碼
return?new?PasswordAuthentication("郵件帳號",?"密碼");
}
});
MimeMessage?message?=?new?MimeMessage(session);
//?設(shè)置發(fā)件人郵件地址
message.setFrom(new?InternetAddress("發(fā)件人郵件地址"));
//?設(shè)置收件人郵件地址
message.addRecipient(Message.RecipientType.TO,?new?InternetAddress("收件人郵件地址"));
message.setSubject("這里是郵件主題。");
message.setText("這里是郵件內(nèi)容。");
Transport.send(message);
}
}
JAVA郵件發(fā)送的大致過程是這樣的的:
1、構(gòu)建一個(gè)繼承自javax.mail.Authenticator的具體類,并重寫里面的getPasswordAuthentication()方法。此類是用作登錄校驗(yàn)的,以確保你對該郵箱有發(fā)送郵件的權(quán)利。
2、構(gòu)建一個(gè)properties文件,該文件中存放SMTP服務(wù)器地址等參數(shù)。
3、通過構(gòu)建的properties文件和javax.mail.Authenticator具體類來創(chuàng)建一個(gè)javax.mail.Session。Session的創(chuàng)建,就相當(dāng)于登錄郵箱一樣。剩下的自然就是新建郵件。
4、構(gòu)建郵件內(nèi)容,一般是javax.mail.internet.MimeMessage對象,并指定發(fā)送人,收信人,主題,內(nèi)容等等。
5、使用javax.mail.Transport工具類發(fā)送郵件。
網(wǎng)站標(biāo)題:java發(fā)郵件收郵件代碼,JAVA發(fā)送郵件
文章地址:http://chinadenli.net/article31/dsshdsd.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、網(wǎng)站排名、面包屑導(dǎo)航、商城網(wǎng)站、虛擬主機(jī)、手機(jī)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)