package com.test;
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;html
//發送一封圖文加附件的郵件
public class SendMail {
public static void sendMail(String fromMail, String user, String password,
String toMail,
String mailTitle,
String mailContent) throws Exception {
Properties props = new Properties(); //能夠加載一個配置文件
// 使用smtp:簡單郵件傳輸協議
props.put("mail.smtp.host", "smtp.qq.com");//存儲發送郵件服務器的信息
props.put("mail.smtp.auth", "true");//同時經過驗證
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.setProperty("mail.smtp.port", "465");
props.setProperty("mail.smtp.socketFactory.port", "465");
Session session = Session.getInstance(props);//根據屬性新建一個郵件會話
//session.setDebug(true); //有他會打印一些調試信息。
MimeMessage message = new MimeMessage(session);//由郵件會話新建一個消息對象
message.setFrom(new InternetAddress(fromMail));//設置發件人的地址
message.setRecipient(Message.RecipientType.TO, new InternetAddress(toMail));//設置收件人,並設置其接收類型爲TO
message.setSubject(mailTitle);//設置標題
//設置信件內容
//message.setText(mailContent); //發送 純文本 郵件 todo
message.setContent(mailContent, "text/html;charset=gbk"); //發送HTML郵件,內容樣式比較豐富
message.setSentDate(new Date());//設置發信時間
message.saveChanges();//存儲郵件信息
//發送郵件
//Transport transport = session.getTransport("smtp");
Transport transport = session.getTransport();
transport.connect(user, password);
transport.sendMessage(message, message.getAllRecipients());//發送郵件,其中第二個參數是全部已設好的收件人地址
transport.close();
}
public static void main(String[] args) throws Exception {
sendMail("發件郵箱", "發件人", "有些受權密碼",
"收件人",
"主題",
"<a>下發內容</a>:<b>正文</b>");
}java
}服務器
注*:mail.jarsession