最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java工具類SendEmailUtil實現(xiàn)發(fā)送郵件

 更新時間:2019年02月10日 10:20:14   作者:Elk_love_madness  
這篇文章主要為大家詳細介紹了java工具類SendEmailUtil實現(xiàn)發(fā)送郵件,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了java實現(xiàn)發(fā)送郵件的工具類,供大家參考,具體內容如下

SendEmailUtil

<dependency>
 <groupId>javax.mail</groupId>
 <artifactId>mail</artifactId>
 <version>1.4.5</version>
</dependency>
import javax.mail.Address;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import com.sun.mail.util.MailSSLSocketFactory;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Properties;
 
public class SendmailUtil {
 
 //郵件服務器主機名
 // QQ郵箱的 SMTP 服務器地址為: smtp.qq.com
 private static String myEmailSMTPHost = "smtp.qq.com";
 
 //發(fā)件人郵箱
 private static String myEmailAccount = "xxxxxxxxxx@xx.com";
 
 //發(fā)件人郵箱密碼(授權碼)
 //在開啟SMTP服務時會獲取到一個授權碼,把授權碼填在這里
 private static String myEmailPassword = "xxxxxxxxxxxx";
 
 /**
  * 郵件單發(fā)(自由編輯短信,并發(fā)送,適用于私信)
  *
  * @param toEmailAddress 收件箱地址
  * @param emailTitle 郵件主題
  * @param emailContent 郵件內容
  * @throws Exception
  */
 public static void sendEmail(String toEmailAddress, String emailTitle, String emailContent) throws Exception{
    
  Properties props = new Properties();
   
  // 開啟debug調試
  props.setProperty("mail.debug", "true");
     
  // 發(fā)送服務器需要身份驗證
  props.setProperty("mail.smtp.auth", "true");
   
  // 端口號
  props.put("mail.smtp.port", 465);
   
  // 設置郵件服務器主機名
  props.setProperty("mail.smtp.host", myEmailSMTPHost);
   
  // 發(fā)送郵件協(xié)議名稱
  props.setProperty("mail.transport.protocol", "smtp");
   
  /**SSL認證,注意騰訊郵箱是基于SSL加密的,所以需要開啟才可以使用**/
  MailSSLSocketFactory sf = new MailSSLSocketFactory();
  sf.setTrustAllHosts(true);
   
  //設置是否使用ssl安全連接(一般都使用)
  props.put("mail.smtp.ssl.enable", "true");
  props.put("mail.smtp.ssl.socketFactory", sf);
   
  //創(chuàng)建會話
  Session session = Session.getInstance(props);
   
  //獲取郵件對象
  //發(fā)送的消息,基于觀察者模式進行設計的
  Message msg = new MimeMessage(session);
   
  //設置郵件標題
  msg.setSubject(emailTitle);
   
  //設置郵件內容
  //使用StringBuilder,因為StringBuilder加載速度會比String快,而且線程安全性也不錯
  StringBuilder builder = new StringBuilder();
   
  //寫入內容
  builder.append("\n" + emailContent);
   
  //寫入我的官網(wǎng)
  builder.append("\n官網(wǎng):" + "https://www.hbuecx.club");
   
  //定義要輸出日期字符串的格式
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   
  //在內容后加入郵件發(fā)送的時間
  builder.append("\n時間:" + sdf.format(new Date()));
   
  //設置顯示的發(fā)件時間
  msg.setSentDate(new Date());
   
  //設置郵件內容
  msg.setText(builder.toString());
   
  //設置發(fā)件人郵箱
  // InternetAddress 的三個參數(shù)分別為: 發(fā)件人郵箱, 顯示的昵稱(只用于顯示, 沒有特別的要求), 昵稱的字符集編碼
  msg.setFrom(new InternetAddress(myEmailAccount,"你好!", "UTF-8"));
   
  //得到郵差對象
  Transport transport = session.getTransport();
   
  //連接自己的郵箱賬戶
  //密碼不是自己QQ郵箱的密碼,而是在開啟SMTP服務時所獲取到的授權碼
  //connect(host, user, password)
  transport.connect( myEmailSMTPHost, myEmailAccount, myEmailPassword);
   
  //發(fā)送郵件
  transport.sendMessage(msg, new Address[] { new InternetAddress(toEmailAddress) });
   
  //將該郵件保存到本地
  OutputStream out = new FileOutputStream("MyEmail.eml");
  msg.writeTo(out);
  out.flush();
  out.close();
 
  transport.close();
 }
}
//toEmailAddress 目標郵箱地址
//emailTitle 郵件標題
//emailContent 郵件內容 
SendmailUtil.sendEmail(toEmailAddress, emailTitle, emailContent);

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 在SpringMVC框架下實現(xiàn)文件的上傳和下載示例

    在SpringMVC框架下實現(xiàn)文件的上傳和下載示例

    本篇文章主要介紹了在SpringMVC框架下實現(xiàn)文件的上傳和下載示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-02-02
  • SpringBoot如何優(yōu)雅地使用Swagger2

    SpringBoot如何優(yōu)雅地使用Swagger2

    這篇文章主要介紹了SpringBoot如何優(yōu)雅地使用Swagger2,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • MyBatis中多對一和一對多數(shù)據(jù)的處理方法

    MyBatis中多對一和一對多數(shù)據(jù)的處理方法

    這篇文章主要介紹了MyBatis中多對一和一對多數(shù)據(jù)的處理,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-01-01
  • Java?String之contains方法的使用詳解

    Java?String之contains方法的使用詳解

    這篇文章主要介紹了Java?String之contains方法的使用詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • SpringBoot整合Redis使用RedisTemplate和StringRedisTemplate

    SpringBoot整合Redis使用RedisTemplate和StringRedisTemplate

    Spring?Boot?Data(數(shù)據(jù))?Redis?中提供了RedisTemplate和StringRedisTemplate,其中StringRedisTemplate是RedisTemplate的子類,兩個方法基本一致。本文介紹了SpringBoot整合Redis使用RedisTemplate和StringRedisTemplate的方法,需要的可以參考一下
    2022-12-12
  • MyBatis中的關聯(lián)關系配置與多表查詢的操作代碼

    MyBatis中的關聯(lián)關系配置與多表查詢的操作代碼

    本文介紹了在MyBatis中配置和使用一對多和多對多關系的方法,通過合理的實體類設計、Mapper接口和XML文件的配置,我們可以方便地進行多表查詢,并豐富了應用程序的功能和靈活性,需要的朋友可以參考下
    2023-09-09
  • 深入剖析Java中的各種異常處理方式

    深入剖析Java中的各種異常處理方式

    這篇文章主要介紹了深入剖析Java中的各種異常處理方式,是Java入門學習中的基礎知識,需要的朋友可以參考下
    2015-07-07
  • Java中Logger定義的3種方式及最佳實踐

    Java中Logger定義的3種方式及最佳實踐

    這篇文章主要介紹了Java中三種常見的Logger定義方式及其優(yōu)缺點,同時文章還討論了Logger的命名和訪問修飾符的最佳實踐,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-02-02
  • Mybatis執(zhí)行多條語句/批量更新方式

    Mybatis執(zhí)行多條語句/批量更新方式

    這篇文章主要介紹了Mybatis執(zhí)行多條語句/批量更新方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 如何改變idea和maven中的sdk版本

    如何改變idea和maven中的sdk版本

    這篇文章主要介紹了如何改變idea和maven中的sdk版本,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07

最新評論

富民县| 桂平市| 和龙市| 连云港市| 彩票| 安多县| 八宿县| 淮滨县| 荥经县| 郁南县| 呈贡县| 东明县| 沙河市| 南和县| 七台河市| 黄梅县| 彭水| 西华县| 平泉县| 清丰县| 碌曲县| 边坝县| 大石桥市| 桂阳县| 宿松县| 九龙坡区| 丹东市| 盐山县| 新晃| 巴林右旗| 依安县| 隆安县| 呼伦贝尔市| 阿拉善盟| 武鸣县| 南澳县| 嘉善县| 丰县| 河北省| 祁阳县| 黎平县|