中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用javaMail發送郵件的方法

發布時間:2020-10-04 23:58:32 來源:網絡 閱讀:346 作者:沙漏半杯 欄目:編程語言

import java.util.Date;

import java.util.Properties;



import javax.activation.DataHandler;

import javax.activation.FileDataSource;

import javax.mail.Address;

import javax.mail.Authenticator;

import javax.mail.BodyPart;

import javax.mail.Message;

import javax.mail.Multipart;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeBodyPart;

import javax.mail.internet.MimeMessage;

import javax.mail.internet.MimeMultipart;

import javax.mail.internet.MimeUtility;



/**

?* javaMail發送郵件工具類

?*?

?* @author

?* @version 1.0

?*/

public class MailUtil {

? ? /**

? ? ?* 附件地址

? ? ?*/

? ? private String filepath;



? ? /**

? ? ?* 取附件

? ? ?*?

? ? ?* @return filepath

? ? ?*/

? ? public String getFilepath() {

? ? ? ? return filepath;

? ? }



? ? /**

? ? ?* 設置附件

? ? ?*?

? ? ?* @param filepath filepath

? ? ?*/

? ? public void setFilepath(String filepath) {

? ? ? ? this.filepath = filepath;

? ? }



? ? /**

? ? ?* 發送郵件的服務器地址

? ? ?*/

? ? private String mailServerHost = "smtp.exmail.qq.com";

? ? /**

? ? ?* 發送郵件的服務器端口

? ? ?*/

? ? private String mailServerPort = "25";

? ? /**

? ? ?* 設置發送郵件前是否需要驗證

? ? ?*/

? ? private boolean validate = true;

? ? /**

? ? ?* 設置發送郵件的賬號

? ? ?*/

? ? private String userName = "235583@qq.com";

? ? /**

? ? ?* 郵件密碼

? ? ?*/

? ? private String userPass = "Cd1555";

? ? /**

? ? ?* 設置發送郵件的地址

? ? ?*/

? ? private String fromAddress = "23558@qq.com";

? ? /**

? ? ?* 郵件發送對象

? ? ?*/

? ? private String toAddress = "2355836@qq.com";

? ? /**

? ? ?* 設置發送郵件的主題

? ? ?*/

? ? private String subject = "測試java發送郵件";

? ? /**

? ? ?* 郵件內容

? ? ?*/

? ? private String content = "您好!<br/>這里用java發送郵件的測試內容<br/><br/>-<br/>";

? ? /**

? ? ?* 設置發送郵件的格式是否采用html編碼

? ? ?*/

? ? private boolean isHTML = true;

? ? /**

? ? ?* 設置發送郵件是否采用安全連接

? ? ?*/

? ? private boolean isSSL = false;



? ? /**

? ? ?* 設置發送郵件的主機

? ? ?*?

? ? ?* @param mailServerHost

? ? ?*? ? ? ? ? ? 發送郵件的服務器地址

? ? ?*/

? ? public void setMailServerHost(String mailServerHost) {

? ? ? ? this.mailServerHost = mailServerHost;

? ? }



? ? /**

? ? ?* 設置發送郵件的服務器端口 <br/>

? ? ?* 說明:默認值"25"

? ? ?*?

? ? ?* @param mailServerPort

? ? ?*? ? ? ? ? ? 發送郵件的服務器端口

? ? ?*/

? ? public void setMailServerPort(String mailServerPort) {

? ? ? ? this.mailServerPort = mailServerPort;

? ? }



? ? /**

? ? ?* 設置發送郵件前是否需要驗證 <br/>

? ? ?* 說明:默認值true要驗證

? ? ?*?

? ? ?* @param validate

? ? ?*? ? ? ? ? ? true要驗證 or false不驗證

? ? ?*/

? ? public void setValidate(boolean validate) {

? ? ? ? this.validate = validate;

? ? }



? ? /**

? ? ?* 設置發送郵件的地址 <br/>

? ? ?* 說明:默認值"xxxxxxx@qq.com"

? ? ?*?

? ? ?* @param fromAddress

? ? ?*? ? ? ? ? ? 發送郵件的地址

? ? ?*/

? ? public void setFromAddress(String fromAddress) {

? ? ? ? this.fromAddress = fromAddress;

? ? }



? ? /**

? ? ?* 設置接收郵件的地址 <br/>

? ? ?* 說明:默認值"xxxxxxxx@qq.com"

? ? ?*?

? ? ?* @param toAddress

? ? ?*? ? ? ? ? ? 接收郵件的地址

? ? ?*/

? ? public void setToAddress(String toAddress) {

? ? ? ? this.toAddress = toAddress;

? ? }



? ? /**

? ? ?* 設置發送郵件的主題 <br/>

? ? ?* 說明:默認值"測試java發送郵件"

? ? ?*?

? ? ?* @param subject

? ? ?*? ? ? ? ? ? 發送郵件的主題

? ? ?*/

? ? public void setSubject(String subject) {

? ? ? ? this.subject = subject;

? ? }



? ? /**

? ? ?* 設置發送郵件的內容 <br/>

? ? ?* 說明:默認值"您好!<br/>

? ? ?* 這里用java發送郵件的測試內容<br/>

? ? ?* <br/>

? ? ?* -頂呱呱<br/>

? ? ?* "

? ? ?*?

? ? ?* @param content

? ? ?*? ? ? ? ? ? 發送郵件的內容

? ? ?*/

? ? public void setContent(String content) {

? ? ? ? this.content = content;

? ? }



? ? /**

? ? ?* 設置發送郵件的格式是否采用html編碼 <br/>

? ? ?* 說明:默認true是

? ? ?*?

? ? ?* @param isHTML

? ? ?*? ? ? ? ? ? true是 false否

? ? ?*/

? ? public void setHTML(boolean isHTML) {

? ? ? ? this.isHTML = isHTML;

? ? }



? ? /**

? ? ?* 設置發送郵件是否采用安全連接 <br/>

? ? ?* 說明:默認false否

? ? ?*?

? ? ?* @param isSSL

? ? ?*? ? ? ? ? ? true是 false否

? ? ?*/

? ? public void setSSL(boolean isSSL) {

? ? ? ? this.isSSL = isSSL;

? ? }



? ? /**

? ? ?* 設置發送郵件的賬號

? ? ?*?

? ? ?* @param userName

? ? ?*? ? ? ? ? ? 發送郵件的賬號

? ? ?*/

? ? public void setUserName(String userName) {

? ? ? ? this.userName = userName;

? ? }



? ? /**

? ? ?* 設置發送郵件的賬號密碼

? ? ?*?

? ? ?* @param userPass

? ? ?*? ? ? ? ? ? 發送郵件的賬號密碼

? ? ?*/

? ? public void setUserPass(String userPass) {

? ? ? ? this.userPass = userPass;

? ? }



? ? /**

? ? ?* 發送郵件

? ? ?*?

? ? ?* @param toAddress

? ? ?*? ? ? ? ? ? 收件人郵箱地址

? ? ?* @param subject

? ? ?*? ? ? ? ? ? 郵件主題

? ? ?* @param content

? ? ?*? ? ? ? ? ? 郵件內容

? ? ?* @param filepath

? ? ?*? ? ? ? ? ? 附件地址

? ? ?* @return true:發送成功;false:發送失敗

? ? ?*/

? ? public boolean sendMail(String toAddress, String subject, String content,

? ? ? ? ? ? String filepath) {

? ? ? ? this.toAddress = toAddress;

? ? ? ? this.subject = subject;

? ? ? ? this.content = content;

? ? ? ? this.filepath = filepath;

? ? ? ? return sendMail();

? ? }



? ? /**

? ? ?* 發送郵件

? ? ?*?

? ? ?* @return true:發送成功;false:發送失敗

? ? ?*/

? ? public boolean sendMail() {

? ? ? ? Properties p = new Properties();

? ? ? ? p.put("mail.smtp.host", mailServerHost);

? ? ? ? p.put("mail.smtp.port", mailServerPort);

? ? ? ? p.put("mail.smtp.auth", validate ? "true" : "false");

? ? ? ? if (isSSL) {

? ? ? ? ? ? p.put("mail.smtp.starttls.enable", "true");

? ? ? ? ? ? p.put("mail.smtp.socketFactory.fallback", "false");

? ? ? ? ? ? p.put("mail.smtp.socketFactory.port", mailServerPort);

? ? ? ? }

? ? ? ? Authenticator auth = null;

? ? ? ? if (validate) {

? ? ? ? ? ? auth = new MyAuthenticator(userName, userPass);

? ? ? ? }

? ? ? ? try {

? ? ? ? ? ? Session session = Session.getDefaultInstance(p, auth);

? ? ? ? ? ? Message message = new MimeMessage(session);

? ? ? ? ? ? Address from = new InternetAddress(fromAddress);

? ? ? ? ? ? Address to = new InternetAddress(toAddress);

? ? ? ? ? ? message.setFrom(from);

? ? ? ? ? ? message.setRecipient(Message.RecipientType.TO, to);

? ? ? ? ? ? message.setSubject(subject);

? ? ? ? ? ? message.setSentDate(new Date());

? ? ? ? ? ? if (isHTML) {

? ? ? ? ? ? ? ? Multipart m = new MimeMultipart();

? ? ? ? ? ? ? ? BodyPart bp = new MimeBodyPart();

? ? ? ? ? ? ? ? bp.setContent(content, "text/html; charset=utf-8");

? ? ? ? ? ? ? ? // 加入附件

? ? ? ? ? ? ? ? FileDataSource ds = new FileDataSource(filepath);

? ? ? ? ? ? ? ? bp.setDataHandler(new DataHandler(ds));

? ? ? ? ? ? ? ? bp.setFileName(MimeUtility.encodeText(ds.getName()));

? ? ? ? ? ? ? ? m.addBodyPart(bp);

? ? ? ? ? ? ? ? message.setContent(m);

? ? ? ? ? ? } else

? ? ? ? ? ? ? ? message.setText(content);

? ? ? ? ? ? Transport.send(message);

? ? ? ? ? ? return true;

? ? ? ? } catch (Exception e) {

? ? ? ? ? ? e.printStackTrace();

? ? ? ? ? ? return false;

? ? ? ? }

? ? }



? ? /**

? ? ?* 測試發送

? ? ?*?

? ? ?* @param args

? ? ?*? ? ? ? ? ? 參數

? ? ?*/

? ? public static void main(String[] args) {

? ? ? ? boolean x = new MailUtil().sendMail();

? ? ? ? LoggerUtils.info(x);

? ? }

}


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兴和县| 遂平县| 芦山县| 淮南市| 泰宁县| 定襄县| 乌苏市| 邵东县| 陵水| 泌阳县| 塘沽区| 湘乡市| 五原县| 萍乡市| 文化| 石首市| 巴南区| 虎林市| 饶河县| 崇仁县| 莲花县| 龙岩市| 松滋市| 齐河县| 浠水县| 长岛县| 巴林右旗| 三河市| 镇原县| 遂宁市| 北碚区| 诸暨市| 土默特左旗| 金乡县| 天全县| 珲春市| 阿巴嘎旗| 会宁县| 海阳市| 陇西县| 章丘市|