java免費發送郵件實現

來源:互聯網
上載者:User

java免費發送郵件實現

現在項目上線一段時間了,希望能夠在項目中出現異常後郵件通知給相關開發人員。我從網上找了大量的第三方介面(需要花錢)和發送郵件demo。最後選擇了一個只需要引入一個jar包和一個工具類的實現,不需要設定檔,具體的工具類代碼如下:

package com.evan.mail;import java.util.Date;import java.util.Properties;import javax.mail.Authenticator;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.PasswordAuthentication;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.AddressException;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;public class SendMail {    public static void main(String[] args) {        MessageVo mv = new MessageVo();        mv.setSubject("很遺憾,您的程式出bug了"+new Date());        mv.setText("bug的具體內容為:"+"null 指標異常");        mv.setToMailAddress("[email protected]");        sendMail(mv);    }    public static void sendMail(MessageVo mv ){        final String username = "[email protected]";        final String password = "evan0202";        boolean isSSL = true;        String host = "smtp.163.com";        int port = 465;        boolean isAuth = true;        String from = "[email protected]";        Properties props = new Properties();        props.put("mail.smtp.ssl.enable", isSSL);        props.put("mail.smtp.host", host);        props.put("mail.smtp.port", port);        props.put("mail.smtp.auth", isAuth);        Session session = Session.getDefaultInstance(props, new Authenticator() {            @Override            protected PasswordAuthentication getPasswordAuthentication() {                return new PasswordAuthentication(username, password);            }        });        try {            Message message = new MimeMessage(session);            message.setFrom(new InternetAddress(from));            message.setSubject(mv.getSubject());            message.setText(mv.getText());            message.addRecipient(Message.RecipientType.TO, new InternetAddress(mv.getToMailAddress()));            Transport.send(message);        } catch (AddressException e) {            e.printStackTrace();        } catch (MessagingException e) {            e.printStackTrace();        }        System.out.println("發送完畢!");    }}

需要注意的是:
1、寄件者郵箱沒有開通pop3/SMTP協議需要開通
2、寄件者163郵件發送次數多了,163會提示說帳號有安全威脅之類,需要你在163郵箱設定授權
3、項目中需要用到的jar是mail-1.4.5.jar

直接將項目匯入eclipse,運行main方法即可完成發送郵件
完整項目(免積分):http://download.csdn.net/download/zl544434558/9393226

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.