package me.gacl.main;
成都創(chuàng)新互聯(lián)公司專注于萬載企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),商城網(wǎng)站制作。萬載網(wǎng)站建設(shè)公司,為萬載等地區(qū)提供建站服務(wù)。全流程按需設(shè)計網(wǎng)站,專業(yè)設(shè)計,全程項目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
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 args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
Properties prop = new Properties();
prop.setProperty("mail.host", "smtp.sohu.com");
prop.setProperty("mail.transport.protocol", "smtp");
prop.setProperty("mail.smtp.auth", "true");
//使用JavaMail發(fā)送郵件的5個步驟
//1、創(chuàng)建session
Session session = Session.getInstance(prop);
//開啟Session的debug模式,這樣就可以查看到程序發(fā)送Email的運行狀態(tài)
session.setDebug(true);
//2、通過session得到transport對象
Transport ts = session.getTransport();
//3、使用郵箱的用戶名和密碼連上郵件服務(wù)器,發(fā)送郵件時,發(fā)件人需要提交郵箱的用戶名和密碼給smtp服務(wù)器,用戶名和密碼都通過驗證之后才能夠正常發(fā)送郵件給收件人。
ts.connect("smtp.sohu.com", "gacl", "郵箱密碼");
//4、創(chuàng)建郵件
Message message = createSimpleMail(session);
//5、發(fā)送郵件
ts.sendMessage(message, message.getAllRecipients());
ts.close();
}
/**
* @Method: createSimpleMail
* @Description: 創(chuàng)建一封只包含文本的郵件
* @param session
* @return
* @throws Exception
*/
public static MimeMessage createSimpleMail(Session session)
throws Exception {
//創(chuàng)建郵件對象
MimeMessage message = new MimeMessage(session);
//指明郵件的發(fā)件人
message.setFrom(new InternetAddress("gacl@sohu.com"));
//指明郵件的收件人,現(xiàn)在發(fā)件人和收件人是一樣的,那就是自己給自己發(fā)
message.setRecipient(Message.RecipientType.TO, new InternetAddress("gacl@sohu.com"));
//郵件的標(biāo)題
message.setSubject("只包含文本的簡單郵件");
//郵件的文本內(nèi)容
message.setContent("你好?。?, "text/html;charset=UTF-8");
//返回創(chuàng)建好的郵件對象
return message;
}
}
這個異常表示有類型轉(zhuǎn)換錯誤,有個地方需要使用 javax.mail.Multipart 類型的對象,你用了 com.sun.mail.imap.IMAPInputStream 類型,所以出現(xiàn)了這個異常。
根據(jù)你給的有限的資料,暫時只能分析道這么多了。
import java.util.Properties;
import java.util.Date;
import javax.mail.Session;
import javax.mail.Message;
import javax.mail.Transport;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.InternetAddress;
public class HelloWorldJavaMail {
public static void main(String[] args) {
try {
Properties props = System.getProperties();
props.put("mail.smtp.host","xxx.xxx.xxx.xxx");
Session session=Session.getDefaultInstance(props,null);
MimeMessage mimeMessage=new MimeMessage(session);
mimeMessage.setFrom(new InternetAddress("xx@xx.xx","姓名","gb2312"));
mimeMessage.setRecipients(Message.RecipientType.TO,"xx@xx.xx");
mimeMessage.setSubject("Hello World JavaMail","gb2312");
mimeMessage.setText("h1Hello World JavaMail/h1","gb2312");
mimeMessage.setHeader("Content-Type","text/html");
mimeMessage.setSentDate(new Date());
Transport.send(mimeMessage);
} catch (Exception e) {
e.printStackTrace();
}
}
}
2。收信
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
public class HelloWorldPOP {
public static void main(String args[]) {
try {
String host="xxx.xxx.xxx.xxx";
String user="xxxxxx";
String password="xxxxxx";
Session session = Session.getDefaultInstance(System.getProperties(), null);
Store store = session.getStore("pop3");
store.connect(host, -1, user, password);
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_ONLY);
int totalMessages = folder.getMessageCount();
if (totalMessages == 0) {
System.out.println("沒有郵件");
folder.close(false);
store.close();
return;
}
Message[] messages = folder.getMessages();
for (int i = 0; i messages.length; i++) {
showMessage(messages[i]);
}
folder.close(false);
store.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void showMessage(Message m) throws Exception {
Address[] a;
if ((a = m.getFrom())!=null) {
for (int j = 0; j a.length; j++) {
System.out.println("送信人: " + MimeUtility.decodeText(a[j].toString()));
}
}
if ((a = m.getRecipients(Message.RecipientType.TO))!=null) {
for (int j = 0; j a.length; j++) {
System.out.println("收信人: " + MimeUtility.decodeText(a[j].toString()));
}
}
System.out.println("主體: " + m.getSubject());
Date d = m.getSentDate();
System.out.println("日期: " + (d!= null ? d.toString() : "不明"));
System.out.println("大小: " + m.getSize());
System.out.println("內(nèi)容:\n" + m.getContent());
}
}
用JAVAMAIL很容易實現(xiàn)的。
參照:
新聞名稱:java郵件接收代碼 java收發(fā)郵件
本文鏈接:http://muchs.cn/article24/dojhjje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、面包屑導(dǎo)航、品牌網(wǎng)站設(shè)計、靜態(tài)網(wǎng)站、做網(wǎng)站、網(wǎng)站設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)