我想在公司每個項目中都會遇到發郵件的問題
發郵件我用的sun公司的email
方法
public boolean SendEmailTest(String ToEmailStr
{
//ToEmailStr收件人地址
//Title郵件標題
//Content郵件內容
//FromEmail發件人地址
FromEmail=
// System
boolean fnt = false;
Properties props = new Properties();
Session sendMailSession;
Transport transport;
sendMailSession = Session
props
props
try
{
transport = sendMailSession
nnect(
Message newMessage = new MimeMessage(sendMailSession);
//設置mail主題
String mail_subject=Title;
sun
newMessage
// newMessage
//設置發信人地址
//String strFrom=
// strFrom=new String(strFrom
// newMessage
Address address[] = {new InternetAddress(FromEmail)};//改變發件人地址
newMessage
//設置收件人地址
newMessage
//設置mail正文
newMessage
String mail_text=Content;
newMessage
// newMessage
//newMessage
newMessage
transport
fnt=true;
transport
}
catch(Exception e)
{
fnt=false;
System
}
System
return fnt;
}
如果想分開哪麼可以寫成
import javax
import javax
public class Email_Autherticator extends Authenticator {
String username =
String password =
public Email_Autherticator() {
super();
}
import java
import java
import javax
import javax
import javax
import javax
import javax
import javax
import javax
import javax
public class Mail {
private String host =
private String mail_head_name =
private String mail_head_value =
private String mail_to =
private String mail_from =
private String mail_subject =
private String mail_body =
private String personalName =
public void sendMail() throws SendFailedException{
try {
Properties props = new Properties();//獲取系統環境
Authenticator auth = new Email_Autherticator();//進行郵件服務用戶認證
props
props
System
Session session = Session
//設置session
MimeMessage message = new MimeMessage(session);
message
message
message
message
message
Address address = new InternetAddress(mail_from
message
Address toaddress = new InternetAddress(mail_to);//設置郵件接收者的地址
message
System
Transport
System
} catch (Exception e) {
e
}
//return flag;
}
}
public Email_Autherticator(String user
super();
username = user;
password = pwd;
}
public PasswordAuthentication getPasswordAuthentication(){
return new PasswordAuthentication(username
}
}
====================其中遇到的問題以及解決方案=========================
其中如果發送失敗
smtp:QQ的是
我覺得一般的郵箱應該都是 smtp
以前的郵箱這個可以設成false但是現在的一般都不行的
如果pop
而且qq的郵箱是郵箱開通後兩周才能手懂開通pop
但最後還是找到了決絕方案
在winxp下
只要你的title和comtent在後台發送前有轉碼基本就沒有問題的
轉碼
在Linux下
我用的是在Linux下用的weblogic
郵件的標題亂碼解決
String mail_subject=Title;
sun
newMessage
如果是在winxp上只需要newMessage
郵件的正文這樣是不行的
newMessage
而在winxp上只需要newMessage
剩下的就沒有什麼問題了
可是有的郵箱收不到
最後沒辦法
如果qq郵箱用
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26829.html