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

使用Java實(shí)現(xiàn)qq郵箱發(fā)送郵件

 更新時(shí)間:2020年04月23日 15:51:13   作者:缺德的伯爵  
這篇文章主要為大家詳細(xì)介紹了使用Java實(shí)現(xiàn)qq郵箱發(fā)送郵件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了Java操作qq郵箱發(fā)送郵件的具體代碼,供大家參考,具體內(nèi)容如下

今天嘗試了使用QQ郵箱的POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務(wù)來進(jìn)行發(fā)送郵件!(這些個(gè)服務(wù)就是些協(xié)議,只有開啟了之后就可以做一些操作)

步驟

1、登錄QQ郵箱> 設(shè)置 > 賬戶

2、找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務(wù)
開啟 POP3/SMTP 服務(wù) > 拿到授權(quán)碼

3、創(chuàng)建maven項(xiàng)目

4、在pom.xml導(dǎo)入依賴包

<!-- java發(fā)送郵件jar包 -->
   <dependency>
    <groupId>javax.mail</groupId>
    <artifactId>mail</artifactId>
    <version>1.4.7</version>
</dependency>

5、創(chuàng)建java類 類名取為:SendEmailManger(注意包別導(dǎo)錯(cuò)了)

package com.xdl.util;

import com.sun.mail.util.MailSSLSocketFactory;

import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;
/**
 * 郵件發(fā)送
 *     QQ郵箱--->別的郵箱
 * @author shiyunpeng
 */
public class SendEmailManger extends Thread {
  private String mailAdr;//郵箱
  private String content;//郵件的內(nèi)容
  private String subject;//郵件的題目
  public SendEmailManger(String mailAdr, String subject, String content) {
    super();
    this.mailAdr = mailAdr;
    this.subject = subject;
    this.content = content;
  }
  @Override
  public void run() {
    super.run();
    try {
      sendMail(mailAdr, subject, content);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
  private void sendMail(String mailAdr, String subject, String content) throws Exception {
    //加密的郵件套接字協(xié)議工廠
    MailSSLSocketFactory sf = new MailSSLSocketFactory();
    sf.setTrustAllHosts(true);
    final Properties props = new Properties();
    // 表示SMTP發(fā)送郵件,需要進(jìn)行身份驗(yàn)證
    props.put("mail.transport.protocol", "smtp");
    props.put("mail.smtp.auth", "true");
    props.put("mail.smtp.host", "smtp.qq.com");
    // smtp登陸的賬號(hào)、密碼 ;需開啟smtp登陸
    props.setProperty("mail.debug", "true");
    props.put("mail.user", "發(fā)送者郵箱");
    props.put("mail.password", "授權(quán)碼");
    // 特別需要注意,要將ssl協(xié)議設(shè)置為true,否則會(huì)報(bào)530錯(cuò)誤
    props.put("mail.smtp.ssl.enable", "true");
    props.put("mail.smtp.ssl.socketFactory", sf);
    Authenticator authenticator = new Authenticator() {
      protected PasswordAuthentication getPasswordAuthentication() {
        // 用戶名、密碼
        String userName = props.getProperty("mail.user");
        String password = props.getProperty("mail.password");
        return new PasswordAuthentication(userName, password);
      }
    };
    // 使用環(huán)境屬性和授權(quán)信息,創(chuàng)建郵件會(huì)話
    Session mailSession = Session.getInstance(props, authenticator);
    // 創(chuàng)建郵件消息
    MimeMessage message = new MimeMessage(mailSession);
    // 設(shè)置發(fā)件人
    try {
      InternetAddress form = new InternetAddress(props.getProperty("mail.user"));
      message.setFrom(form);
      // 設(shè)置收件人
      InternetAddress to = new InternetAddress(mailAdr);
      message.setRecipient(Message.RecipientType.TO, to);
      // 設(shè)置抄送
      // InternetAddress cc = new InternetAddress("591566764@qq.com");
      // message.setRecipient(RecipientType.CC, cc);
      // 設(shè)置密送,其他的收件人不能看到密送的郵件地址
      // InternetAddress bcc = new InternetAddress("mashen@163.com");
      // message.setRecipient(RecipientType.CC, bcc);
      // 設(shè)置郵件標(biāo)題
      message.setSubject(subject);
      // 設(shè)置郵件的內(nèi)容體
      message.setContent(content, "text/html;charset=UTF-8");
      // 發(fā)送郵件
      Transport.send(message);
    } catch (MessagingException e) {
      e.printStackTrace();
    }
  }
  public static void main(String[] args) {
    SendEmailManger d = new SendEmailManger("接收郵件的郵箱", "syp:", "我呵呵,啊打: <br/><br/>加油哦?。。。?...");
    d.start();
  }
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java的代理模式你真的了解嗎

    Java的代理模式你真的了解嗎

    這篇文章主要為大家詳細(xì)介紹了Java的代理模式,結(jié)構(gòu)型模式主要總結(jié)了一些類或?qū)ο蠼M合在一起的經(jīng)典結(jié)構(gòu),這些經(jīng)典的結(jié)構(gòu)可以解決特定應(yīng)用場(chǎng)景的問題,包括:代理模式、橋接模式、裝飾器模式、適配器模式、門面模式、組合模式、享元模式
    2022-03-03
  • nodejs連接dubbo服務(wù)的java工程實(shí)現(xiàn)示例

    nodejs連接dubbo服務(wù)的java工程實(shí)現(xiàn)示例

    這篇文章主要介紹了在項(xiàng)目遷移中,nodejs連接dubbo服務(wù)的java工程實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-03-03
  • SpringBoot 如何從配置文件讀取值到對(duì)象中

    SpringBoot 如何從配置文件讀取值到對(duì)象中

    這篇文章主要介紹了SpringBoot 如何從配置文件讀取值到對(duì)象中,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • 詳解Java使用super和this來重載構(gòu)造方法

    詳解Java使用super和this來重載構(gòu)造方法

    這篇文章主要介紹了詳解Java使用super和this來重載構(gòu)造方法的相關(guān)資料,這里提供實(shí)例來幫助大家理解這部分內(nèi)容,需要的朋友可以參考下
    2017-08-08
  • java web返回中文亂碼問題及解決

    java web返回中文亂碼問題及解決

    這篇文章主要介紹了java web返回中文亂碼問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Hibernate雙向多對(duì)多映射關(guān)系配置代碼實(shí)例

    Hibernate雙向多對(duì)多映射關(guān)系配置代碼實(shí)例

    這篇文章主要介紹了Hibernate雙向多對(duì)多映射關(guān)系配置代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Java?項(xiàng)目連接并使用?SFTP?服務(wù)的示例詳解

    Java?項(xiàng)目連接并使用?SFTP?服務(wù)的示例詳解

    SFTP是一種安全的文件傳輸協(xié)議,是SSH(Secure?Shell)協(xié)議的一個(gè)子協(xié)議,設(shè)計(jì)用于加密和保護(hù)文件傳輸?shù)陌踩?這篇文章主要介紹了Java?項(xiàng)目如何連接并使用?SFTP?服務(wù)的示例詳解,需要的朋友可以參考下
    2025-01-01
  • 詳解spring cloud hystrix緩存功能的使用

    詳解spring cloud hystrix緩存功能的使用

    這篇文章主要介紹了詳解spring cloudhystrix緩存功能的使用,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • Java數(shù)據(jù)結(jié)構(gòu)最清晰圖解二叉樹前 中 后序遍歷

    Java數(shù)據(jù)結(jié)構(gòu)最清晰圖解二叉樹前 中 后序遍歷

    樹是一種重要的非線性數(shù)據(jù)結(jié)構(gòu),直觀地看,它是數(shù)據(jù)元素(在樹中稱為結(jié)點(diǎn))按分支關(guān)系組織起來的結(jié)構(gòu),很象自然界中的樹那樣。樹結(jié)構(gòu)在客觀世界中廣泛存在,如人類社會(huì)的族譜和各種社會(huì)組織機(jī)構(gòu)都可用樹形象表示
    2022-01-01
  • springboot省去配置Tomcat的步驟問題

    springboot省去配置Tomcat的步驟問題

    這篇文章主要介紹了springboot省去配置Tomcat的步驟問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06

最新評(píng)論