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

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

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

本文實例為大家分享了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郵箱>設(shè)置>賬戶 開啟POP3/SMTP服務(wù) 查看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)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java 基于雪花算法生成分布式id

    Java 基于雪花算法生成分布式id

    SnowFlake 算法(雪花算法), 是Twitter開源的分布式id生成算法。其核心思想就是: 使用一個64 bit的long型的數(shù)字作為全局唯一id。本文講述Java 基于雪花算法生成分布式id的方法
    2021-06-06
  • Mybatis-Plus中分頁插件PaginationInterceptor的使用

    Mybatis-Plus中分頁插件PaginationInterceptor的使用

    我們在開發(fā)的過程中,經(jīng)常會遇到分頁操作,本文主要介紹了Mybatis-Plus中分頁插件PaginationInterceptor的使用,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Java的關(guān)鍵字與保留字小結(jié)

    Java的關(guān)鍵字與保留字小結(jié)

    Java 保留字列表 (依字母排序 共14組) : Java保留字是指現(xiàn)有Java版本尚未使用 但以后版本可能會作為關(guān)鍵字使用
    2012-10-10
  • SWT(JFace) Wizard(Eclipse插件編程必備)

    SWT(JFace) Wizard(Eclipse插件編程必備)

    SWT(JFace)小制作:Wizard(Eclipse插件編程必備)
    2009-06-06
  • Spring?MVC中JSON數(shù)據(jù)處理方式實戰(zhàn)案例

    Spring?MVC中JSON數(shù)據(jù)處理方式實戰(zhàn)案例

    Spring MVC是個靈活的框架,返回JSON數(shù)據(jù)的也有很多五花八門的方式,下面這篇文章主要給大家介紹了關(guān)于Spring?MVC中JSON數(shù)據(jù)處理方式的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • SpringBoot激活profiles的幾種方式

    SpringBoot激活profiles的幾種方式

    多環(huán)境是最常見的配置隔離方式之一,可以根據(jù)不同的運行環(huán)境提供不同的配置信息來應(yīng)對不同的業(yè)務(wù)場景,這篇文章主要介紹了SpringBoot激活profiles的幾種方式,需要的朋友可以參考下
    2019-10-10
  • 使用Criteria進行分組求和、排序、模糊查詢的實例

    使用Criteria進行分組求和、排序、模糊查詢的實例

    這篇文章主要介紹了使用Criteria進行分組求和、排序、模糊查詢的實例,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Jmeter環(huán)境搭建及安裝步驟

    Jmeter環(huán)境搭建及安裝步驟

    Jmeter是純Java開發(fā)的,能夠運行Java程序的系統(tǒng)一般都可以運行Jmeter,本文以windows下安裝步驟為例分步驟給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • JAVA封裝多線程實現(xiàn)的方式及原理

    JAVA封裝多線程實現(xiàn)的方式及原理

    這篇文章主要介紹了Java中封裝多線程的原理和常見方式,通過封裝可以簡化多線程的使用,提高安全性,并增強代碼的可維護性和可擴展性,需要的朋友可以參考下
    2025-03-03
  • maven下載jar包改用阿里云maven庫的方法

    maven下載jar包改用阿里云maven庫的方法

    這篇文章主要介紹了maven下載jar包改用阿里云maven庫的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01

最新評論

驻马店市| 昭苏县| 涪陵区| 中方县| 四平市| 江油市| 察雅县| 乌兰察布市| 库伦旗| 新乡县| 永川市| 普格县| 黄冈市| 肥东县| 廊坊市| 襄汾县| 河东区| 普格县| 晋江市| 新密市| 肃南| 昌江| 延安市| 土默特右旗| 宁安市| 麻栗坡县| 仪陇县| 苍山县| 武功县| 四川省| 铁岭县| 新郑市| 绥阳县| 肃北| 安多县| 孝义市| 瑞昌市| 昭觉县| 前郭尔| 朝阳县| 盐城市|