java發送163郵件


 在服務掛掉后,可以采用發送郵件的方式來通知開發人員進行異常處理

 1 import java.io.IOException;
 2 import java.util.Properties;
 3 import javax.mail.BodyPart;
 4 import javax.mail.Message;
 5 import javax.mail.Multipart;
 6 import javax.mail.Session;
 7 import javax.mail.Transport;
 8 import javax.mail.internet.InternetAddress;
 9 import javax.mail.internet.MimeBodyPart;
10 import javax.mail.internet.MimeMessage;
11 import javax.mail.internet.MimeMultipart;
12 
13 
14 public class SendMailUtil {
15 
16     static String HOST = "smtp.163.com"; // smtp服務器
17     static String FROM = "xxx@163.com"; // 發件人地址
18     static String USER = "xxx@163.com"; // 用戶名
19     static String PWD = "key123456"; // 163的授權碼
20     static String SUBJECT = "手表服務拋異常了"; // 郵件標題
21     static String[] TOS = new String[]{"18888888888@163.com"};
22    
23     /**
24      * 發送郵件
25      * @param host
26      * @param user
27      * @param pwd
28      */
29     public static void send(String context) {
30         Properties props = new Properties();
31         props.put("mail.smtp.host", HOST);//設置發送郵件的郵件服務器的屬性(這里使用網易的smtp服務器)
32         props.put("mail.smtp.auth", "true");  //需要經過授權,也就是有戶名和密碼的校驗,這樣才能通過驗證(一定要有這一條)
33         Session session = Session.getDefaultInstance(props);//用props對象構建一個session
34         session.setDebug(true);
35         MimeMessage message = new MimeMessage(session);//用session為參數定義消息對象
36         try {
37             message.setFrom(new InternetAddress(FROM));// 加載發件人地址
38             InternetAddress[] sendTo = new InternetAddress[TOS.length]; // 加載收件人地址
39             for (int i = 0; i < TOS.length; i++) {  
40                 sendTo[i] = new InternetAddress(TOS[i]);  
41             }
42             message.addRecipients(Message.RecipientType.TO,sendTo);
43             message.addRecipients(MimeMessage.RecipientType.CC, InternetAddress.parse(FROM));//設置在發送給收信人之前給自己(發送方)抄送一份,不然會被當成垃圾郵件,報554錯
44             message.setSubject(SUBJECT);//加載標題
45             Multipart multipart = new MimeMultipart();//向multipart對象中添加郵件的各個部分內容,包括文本內容和附件
46             BodyPart contentPart = new MimeBodyPart();//設置郵件的文本內容
47             contentPart.setText(context);
48             multipart.addBodyPart(contentPart);
49             message.setContent(multipart);//將multipart對象放到message中
50             message.saveChanges(); //保存郵件
51             Transport transport = session.getTransport("smtp");//發送郵件
52             transport.connect(HOST, USER, PWD);//連接服務器的郵箱
53             transport.sendMessage(message, message.getAllRecipients());//把郵件發送出去
54             transport.close();//關閉連接
55         } catch (Exception e) {
56             e.printStackTrace();
57         }
58     }
59     
60 
61     public static void main(String[] args) {
62         send("mongo連接池出異常了!!!!!");
63     }
64     
65 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM