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

JavaWeb實現(xiàn)簡單用戶發(fā)送郵件

 更新時間:2021年08月15日 12:36:52   作者:笑-_-笑  
這篇文章主要為大家詳細(xì)介紹了JavaWeb實現(xiàn)簡單用戶發(fā)送郵件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

在實現(xiàn)用戶發(fā)送郵件之前,我們先對電子郵箱的基本概念做一些了解。

一、電子郵件

1. 郵件服務(wù)器

1.要在 Internet 上提供電子郵件功能,必須有專門的電子郵件服務(wù)器。
例如:現(xiàn)在 Internet 很多 提供郵件服務(wù)的廠商:sina、sohu、163 等等他們都有自己的郵件服務(wù)器。
2.這些服務(wù)器類似于現(xiàn)實生活中的郵局,它主要負(fù)責(zé)接收用戶投遞過來的郵件,并把郵件投 遞到郵件接收者的電子郵箱中。
3.郵件服務(wù)器,按照提供的服務(wù)類型,可以分為發(fā)送郵件的服務(wù)器我接收郵件的服務(wù)器。

2. 電子郵箱

電子郵箱(E-mail 地址)的獲得需要在郵件服務(wù)器上進行申請 ,確切地說,電子郵箱其實 就是用戶在郵件服務(wù)器上申請的一個帳戶。用戶在郵件服務(wù)器上申請了一個帳號后,郵件 服務(wù)器就會為這個帳號分配一定的空間,用戶從而可以使用這個帳號以及空間,發(fā)送電子 郵件和保存別人發(fā)送過來的電子郵件。

3. 郵件協(xié)議

SMTP 協(xié)議-發(fā)郵件協(xié)議

a. 全稱為 Simple Mail Transfer Protoco(l 簡單郵件傳輸協(xié)議),它定義了郵件客戶端軟件與 SMTP 服務(wù)器之間、以及兩臺 SMTP 服務(wù)器之間的通訊規(guī)則。
b. 端口號:25

POP3 協(xié)議-收郵件協(xié)議

a. 全稱為 Post Office Protocol(郵局協(xié)議),它定義了郵件客戶端軟件與 POP3 服務(wù)器的通訊規(guī)則。
b. 端口號:110

二、 發(fā)送郵件

1. 發(fā)送郵件的流程

2. 代碼實現(xiàn)

package com.store.utils;

import java.util.Properties;

import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMessage.RecipientType;

public class MailUtils {

 public static void sendMail(String email, String emailMsg)
   throws AddressException, MessagingException {
  // 1.創(chuàng)建一個程序與郵件服務(wù)器對話對象 Session

  Properties props = new Properties();
  //設(shè)置發(fā)送的協(xié)議
  //props.setProperty("mail.transport.protocol", "SMTP");
  
  //設(shè)置發(fā)送郵件的服務(wù)器
  //props.setProperty("mail.host", "smtp.126.com");
  //props.setProperty("mail.smtp.auth", "true");//指定驗證為true

  //創(chuàng)建驗證器
  Authenticator auth = new Authenticator() {
   public PasswordAuthentication getPasswordAuthentication() {
    //設(shè)置發(fā)件人的賬號和密碼
    return new PasswordAuthentication("admin", "admin@store.com");
   }
  };

  Session session = Session.getInstance(props, auth);

  // 2.創(chuàng)建一個Message,它相當(dāng)于是郵件內(nèi)容
  Message message = new MimeMessage(session);

  //設(shè)置發(fā)送者
  message.setFrom(new InternetAddress("admin@store.com"));

  //設(shè)置發(fā)送方式與接收者
  message.setRecipient(RecipientType.TO, new InternetAddress(email)); 

  //設(shè)置郵件主題
  message.setSubject("這是我們的第一份郵件");

  //設(shè)置郵件內(nèi)容
  message.setContent("哈哈,你到我的商城注冊了", "text/html;charset=UTF-8");

  // 3.創(chuàng)建Transport,用于將郵件發(fā)送
  Transport.send(message);
 }
 public static void main(String[] args) throws AddressException, MessagingException {
  MailUtils.sendMail("aaa@store.com", "abcdefg");
 }
}

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

相關(guān)文章

  • linux查找安裝jdk并配置JAVA_HOME的方法

    linux查找安裝jdk并配置JAVA_HOME的方法

    這篇文章主要介紹了linux查找安裝jdk,配置JAVA_HOME,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • SpringBoot整合Canal與RabbitMQ監(jiān)聽數(shù)據(jù)變更記錄

    SpringBoot整合Canal與RabbitMQ監(jiān)聽數(shù)據(jù)變更記錄

    這篇文章主要介紹了SpringBoot整合Canal與RabbitMQ監(jiān)聽數(shù)據(jù)變更記錄,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Java編程之文件讀寫實例詳解

    Java編程之文件讀寫實例詳解

    這篇文章主要介紹了Java編程之文件讀寫的方法,結(jié)合實例形式較為詳細(xì)的分析了Java文件讀寫所涉及的類及相應(yīng)的操作技巧,需要的朋友可以參考下
    2015-12-12
  • 簡單了解spring bean的循環(huán)引用

    簡單了解spring bean的循環(huán)引用

    這篇文章主要介紹了簡單了解spring bean的循環(huán)引用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • SpringCloud Feign高級配置詳解

    SpringCloud Feign高級配置詳解

    這篇文章主要介紹了SpringCloud Feign高級配置,feign是netflix提供的服務(wù)間基于http的rpc調(diào)用框架,在spring cloud得到廣泛應(yīng)用
    2022-09-09
  • Cookie 實現(xiàn)的原理

    Cookie 實現(xiàn)的原理

    我們在瀏覽器中,經(jīng)常涉及到數(shù)據(jù)的交換,比如你登錄郵箱,登錄一個頁面。我們經(jīng)常會在此時設(shè)置30天內(nèi)記住我,或者自動登錄選項。那么它們是怎么記錄信息的呢,答案就是今天的主角cookie了
    2021-06-06
  • Java中Process類的使用與注意事項說明

    Java中Process類的使用與注意事項說明

    這篇文章主要介紹了Java中Process類的使用與注意事項說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 使用Java 壓縮文件打包tar.gz 包的詳細(xì)教程

    使用Java 壓縮文件打包tar.gz 包的詳細(xì)教程

    本文帶領(lǐng)大家學(xué)習(xí)如何使用Java 壓縮文件打包tar.gz 包,主要通過 Apache compress 工具打包,通過示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • ManyToMany單向、雙向:@JoinTable的使用

    ManyToMany單向、雙向:@JoinTable的使用

    這篇文章主要介紹了ManyToMany單向、雙向:@JoinTable的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 詳解SpringMVC的url-pattern配置及原理剖析

    詳解SpringMVC的url-pattern配置及原理剖析

    這篇文章主要介紹了SpringMVC的url-pattern配置及原理剖析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06

最新評論

阿拉善盟| 武穴市| 松潘县| 绵阳市| 张北县| 科尔| 兴隆县| 两当县| 三明市| 枣强县| 那曲县| 安乡县| 子长县| 宣恩县| 本溪市| 武陟县| 白银市| 慈利县| 定西市| 沛县| 延长县| 阳高县| 崇明县| 石阡县| 贵南县| 广昌县| 龙陵县| 巴里| 星座| 宁武县| 乌拉特前旗| 泽库县| 山阳县| 河津市| 新疆| 迁西县| 佛学| 和田县| 莎车县| 郧西县| 依安县|