Jmail發(fā)送郵件工具類分享
更新時間:2017年06月02日 11:46:03 作者:重名
這篇文章主要為大家分享了Jmail發(fā)送郵件工具類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
好久沒更新博客了,實在是拖延癥嚴(yán)重啊,好可怕,先更新個工具類吧,之前寫的發(fā)送郵件的小工具,話不多說上代碼
import lombok.extern.slf4j.Slf4j; import java.util.Properties; import javax.mail.*; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; /** * <b>發(fā)送郵件工具類</b><br/> * <b>Create on:</b>2016/10/9 16:14<br/> * * @author : liud<br/> */ @Slf4j public class SendMailUtil { /** * 發(fā)送郵件 * @param smtpHost * @param fromUser * @param fromUserPassword * @param emailPort * @param toUser * @param subject * @param messageText */ public static boolean doSendEmail(String smtpHost, final String fromUser, final String fromUserPassword, String userName, String emailPort, String toUser, String subject, String messageText) throws Exception { boolean flag = false; try { Properties props = new Properties(); props.put("mail.smtp.host", smtpHost); props.put("mail.smtp.port", emailPort); props.put("mail.smtp.auth", "true"); Session session = Session.getDefaultInstance(props, new Authenticator(){ protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(fromUser, fromUserPassword); }}); MimeMessage message = new MimeMessage(session); // 發(fā)件人 InternetAddress from = new InternetAddress(fromUser); message.setFrom(from); // 收件人 InternetAddress to = new InternetAddress(toUser); message.setRecipient(Message.RecipientType.TO, to); // 郵件標(biāo)題 message.setSubject(subject); // 郵件內(nèi)容,也可以使純文本"text/plain" message.setContent(messageText, "text/html;charset=GBK"); message.saveChanges(); Transport transport = session.getTransport("smtp"); // smtp驗證,就是你用來發(fā)郵件的郵箱用戶名密碼 transport.connect(smtpHost, userName, fromUserPassword); // 發(fā)送 transport.sendMessage(message, message.getAllRecipients()); transport.close(); flag = true; } catch (AddressException e) { log.error("地址異常:{}", e); throw e; } catch (MessagingException e) { log.error("消息異常:{}", e); throw e; } catch (Exception e) { log.error("系統(tǒng)異常:{}", e); throw e; } return flag; } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
hashMap擴容時應(yīng)該注意這些死循環(huán)問題
今天給大家?guī)淼氖顷P(guān)于Java的相關(guān)知識,文章圍繞著hashMap擴容時的死循環(huán)問題展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06淺談spring-boot的單元測試中,@Before不被執(zhí)行的原因
這篇文章主要介紹了淺談spring-boot的單元測試中,@Before不被執(zhí)行的原因,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04Java常問面試內(nèi)容--數(shù)組、聲明、初始化、冒泡、多維數(shù)組、稀疏數(shù)組
這篇文章主要介紹了Java多線程面試題(面試官常問),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-07-07Spring AspectJ 實現(xiàn)AOP的方法你了解嗎
這篇文章主要為大家介紹了Spring AspectJ 實現(xiàn)AOP的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-01-01