import javax.activation.DataHandler;
import javax.activation.DataSource;
import javax.activation.FileDataSource;
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import java.util.Properties;
public class Office365 {
public static void main(String[] args) {
String sender = "[email protected]";
String password = "xxx";
// 收件人郵箱地址
String receiver = "[email protected]";
// office365 郵箱服務器地址及端口號
String host = "smtp-mail.outlook.com";
String prot = "587";
try{
Properties props = new Properties();
// 開啓debug調試
props.setProperty("mail.debug", "true"); //false
// 發送服務器需要身份驗證
props.setProperty("mail.smtp.auth", "true");
// 設置郵件服務器主機名
props.setProperty("mail.host", host);
// 發送郵件協議名稱
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.smtp.port", prot);
props.put("mail.smtp.starttls.enable", "true");
// 設置環境信息
Session session = Session.getInstance(props);
// 創建郵件對象
MimeMessage msg = new MimeMessage(session);
// 設置發件人
msg.setFrom(new InternetAddress(sender));
// 設置收件人
msg.addRecipient(Message.RecipientType.TO, new InternetAddress(receiver));
// 設置郵件主題
msg.setSubject("this is subject");
// 設置郵件內容
Multipart multipart = new MimeMultipart();
MimeBodyPart textPart = new MimeBodyPart();
textPart.setText("this is the text");
multipart.addBodyPart(textPart);
// 添加附件
MimeBodyPart attachPart = new MimeBodyPart();
DataSource source = new FileDataSource("C:\\Users\\fanch\\Downloads\\favicon.ico");
attachPart.setDataHandler(new DataHandler(source));
attachPart.setFileName("image");
multipart.addBodyPart(attachPart);
msg.setContent(multipart);
Transport transport = session.getTransport();
// 連接郵件服務器
transport.connect(sender, password);
// 發送郵件
transport.sendMessage(msg, new Address[]{new InternetAddress(receiver)});
// 關閉連接
transport.close();
}catch( Exception e ){
e.printStackTrace();
}
}
}