欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實現(xiàn)郵件發(fā)送QQ郵箱帶附件

 更新時間:2020年03月06日 13:50:41   作者:Jc_  
這篇文章主要為大家詳細介紹了Java實現(xiàn)郵件發(fā)送QQ郵箱帶附件功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Java實現(xiàn)郵件發(fā)送QQ郵箱帶附件的具體代碼,供大家參考,具體內(nèi)容如下

添加依賴

<!-- https://mvnrepository.com/artifact/javax.mail/mail -->
 <dependency>
  <groupId>javax.mail</groupId>
  <artifactId>mail</artifactId>
  <version>1.4.7</version>
</dependency>

關(guān)鍵代碼

import java.io.File;
import java.io.UnsupportedEncodingException;
import java.util.Properties;
 
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Authenticator;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.PasswordAuthentication;
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;
 
/**
 * 郵件發(fā)送工具類 <br/>
 * Author:楊杰超<br/>
 * Date:2020年1月9日 下午12:02:51 <br/>
 * Copyright (c) 2020, yangjiechao@dingtalk.com All Rights Reserved.<br/>
 *
 */
public class SendMail {
 
 /**
  * 想QQ郵箱發(fā)送郵件
  * 
  * @param formMail
  *   發(fā)送人郵箱地址
  * @param descMail
  *   接收人郵箱地址
  * @param subject
  *   郵箱主題
  * @param content
  *   郵箱內(nèi)容
  * @param files
  *   附件列表
  * @param contentType
  *   內(nèi)容格式
  * @param password
  *   SMTP密碼
  * @throws MessagingException
  * @throws UnsupportedEncodingException
  */
 public static void sendQQMail(String formMail, String descMail, String subject, String content, File[] files,
   String contentType, String password) throws MessagingException, UnsupportedEncodingException {
  Properties properties = new Properties();
  properties.setProperty("mail.smtp.host", "smtp.qq.com");
  properties.setProperty("mail.smtp.port", "465");
  properties.setProperty("mail.smtp.auth", "true");
  properties.setProperty("mail.debug", "true");
  properties.setProperty("mail.transport.protocol", "smtp");
  properties.setProperty("mail.smtp.ssl.enable", "true");
  Session session = Session.getInstance(properties, new Authenticator() {
   @Override
   protected PasswordAuthentication getPasswordAuthentication() {
    return new PasswordAuthentication(formMail, password);
   }
  });
  Message message = new MimeMessage(session);
  try {
   message.setFrom(new InternetAddress(formMail));
   message.setRecipient(Message.RecipientType.TO, new InternetAddress(descMail));
   message.setSubject(subject);
 
   // 是否存在附件
   if (null != files && files.length > 0) {
    MimeMultipart multipart = new MimeMultipart();
 
    BodyPart contentPart = new MimeBodyPart();
    contentPart.setContent(content, contentType);
    multipart.addBodyPart(contentPart);
 
    for (File file : files) {
     MimeBodyPart attachment = new MimeBodyPart();
     DataHandler dh2 = new DataHandler(new FileDataSource(file));
     attachment.setDataHandler(dh2);
     attachment.setFileName(MimeUtility.encodeText(dh2.getName()));
     multipart.addBodyPart(attachment);
    }
    multipart.setSubType("mixed");
 
    message.setContent(multipart);
    message.saveChanges();
   }
   // 普通
   else {
    message.setContent(content, contentType);
   }
 
   Transport transport = session.getTransport();
   transport.connect(formMail, password);
   Transport.send(message);
  } catch (UnsupportedEncodingException e) {
   throw e;
  } catch (NoSuchProviderException e) {
   throw e;
  } catch (MessagingException e) {
   throw e;
  }
 
 }
 
 public static void main(String[] args) throws MessagingException, UnsupportedEncodingException {
  // 由哪個郵箱發(fā)送
  String formMail = "********@qq.com";
  // QQ郵箱>設置>賬戶 開啟POP3/SMTP服務 查看smtp密碼
  String smtpPassword = "****************";
 
  // 發(fā)送人郵箱地址
  String descMail = "470947852@qq.com";
  String contentType = "text/html;charset=UTF-8";
 
  String subject = "測試郵件發(fā)送,含附件";
  String content = "test send mail, 這里是中文";
  File[] files = new File[2];
  files[0] = new File("C:/test_1.xls");
  files[1] = new File("C:/test_2.xls");
 
  SendMail.sendQQMail(formMail, descMail, subject, content, files, contentType, smtpPassword);
 }
}

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

相關(guān)文章

  • Java線程池FutureTask實現(xiàn)原理詳解

    Java線程池FutureTask實現(xiàn)原理詳解

    這篇文章主要介紹了Java線程池FutureTask實現(xiàn)原理詳解,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02
  • 搭建簡單的Spring-Data JPA項目

    搭建簡單的Spring-Data JPA項目

    本文主要介紹了搭建簡單的Spring-Data JPA項目,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 詳解Java中的八種單例創(chuàng)建方式

    詳解Java中的八種單例創(chuàng)建方式

    單例設計模式,就是采取一定的方法保證在整個的軟件系統(tǒng)中,對某個類只能存在一個對象實例,并且該類只提供一個取得其對象實例的方法。本文將詳細介紹Java中單例的八種創(chuàng)建方式,需要的可以參考一下
    2022-02-02
  • 一文解析Java中的方法重寫

    一文解析Java中的方法重寫

    子類繼承父類后,可以在子類中書寫一個與父類同名同參的方法,從而實現(xiàn)對父類中同名同參數(shù)的方法的覆蓋,我們把這一過程叫做方法的重寫。本文將分析一下Java中的方法重寫,感興趣的可以了解一下
    2022-07-07
  • java將m3u8格式轉(zhuǎn)成視頻文件的方法

    java將m3u8格式轉(zhuǎn)成視頻文件的方法

    這篇文章主要介紹了如何java將m3u8格式轉(zhuǎn)成視頻文件,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • Dubbo Service Mesh基礎架構(gòu)組件改造

    Dubbo Service Mesh基礎架構(gòu)組件改造

    Service Mesh這個“熱”詞是2016年9月被“造”出來,而今年2018年更是被稱為service Mesh的關(guān)鍵之年,各家大公司都希望能在這個思潮下領先一步
    2023-03-03
  • 完美解決springboot中使用mybatis字段不能進行自動映射的問題

    完美解決springboot中使用mybatis字段不能進行自動映射的問題

    今天在springboot中使用mybatis的時候不能字段不能夠進行自動映射,接下來給大家給帶來了完美解決springboot中使用mybatis字段不能進行自動映射的問題,需要的朋友可以參考下
    2023-05-05
  • jdk1.8的環(huán)境配置過程

    jdk1.8的環(huán)境配置過程

    Java平臺由Java虛擬機和Java應用程序接口搭建,Java語言則是進入這個平臺的通道,用Java語言編寫并編譯的程序可以運行在這個平臺上,本文給大家講解jdk1.8的環(huán)境配置過程,感興趣的朋友跟隨小編一起看看吧
    2022-11-11
  • SpringBoot實現(xiàn)啟動項目后立即執(zhí)行的方法總結(jié)

    SpringBoot實現(xiàn)啟動項目后立即執(zhí)行的方法總結(jié)

    在項目開發(fā)中某些場景必須要用到啟動項目后立即執(zhí)行方式的功能,所以這篇文章就來和大家聊聊實現(xiàn)立即執(zhí)行的幾種方法,希望對大家有所幫助
    2023-05-05
  • flowable動態(tài)創(chuàng)建多級流程模板實現(xiàn)demo

    flowable動態(tài)創(chuàng)建多級流程模板實現(xiàn)demo

    這篇文章主要為大家介紹了flowable動態(tài)創(chuàng)建多級流程模板實現(xiàn)demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05

最新評論