Email:主要指电子邮件。

当我们想要了解当下的电子邮件的发送时,我们可以先了解一下传统的邮件是如何发送的:传统的邮件是通过邮局投递,然后从一个邮局到另一个邮局,最终到达用户的邮箱的。速度较慢。

电子邮件的发送过程也是类似的,只不过是电子邮件是从用户电脑的邮件软件,例如Outlook,发送到邮件服务器上,可能经过若干个邮件服务器的中转,最终到达对方邮件服务器上,收件方就可以用软件接收邮件。

Outlook这样的邮件称为MUA:Mail User Agent,意思是给用户服务的邮件代理。

邮件服务器则称为MTA:Mail Transfer Agent,意思是邮件中转的代理。

最终到达的邮件服务器称为MDA:Mail Delivery Agent,意思是邮件到达的代理。

实际上,电子邮件通常就存储在MDA服务器的硬盘上,然后等收件人通过软件或者登陆浏览器查看邮件。

 邮件协议:POP3,SMTP,IMAP

POP3:POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件.

SMTP:SMTP 的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地简单地说就是要求必须在提供了账户名和密码之后才可以登录 SMTP 服务器,这就使得那些垃圾邮件的散播者无可乘之机.例如:网易闪电邮的使用。

IMAP:IMAP全称是Internet Mail Access Protocol,即交互式邮件存取协议,它是跟POP3类似邮件访问标准协议之一。不同的是,开启了IMAP后,您在电子邮件客户端收取的邮件仍然保留 在服务器上,同时在客户端上的操作都会反馈到服务器上,如:删除邮件,标记已读等,服务器上的邮件也会做相应的动作。

准备SMTP登录信息:

常用邮件服务商的SMTP信息:
●QQ邮箱:SMTP服务器是smtp.qq.com,端口是465/587
●163邮箱:SMTP服务器是smtp.163.com,端口是465
●126邮箱:SMTP服务器是smtp.126.com,端口是25
●Gmail邮箱:SMTP服务器是smtp.gmail.com,端口是465/587。

准备好SMTP登录信息后,我们首先要把JavaMail相关的依赖Jar包javax.mail-1.6.2.jar加入至当前项目。

为避免代码冗余我们先创建一个SMTP服务器的信息类。

代码呈现:

发送邮件的代码呈现:

Email小结:

1.使用JavaMail API发送邮件本质上是一个MUA软件通过SMTP协议发送邮件至MTA服务器
2.打开调试模式可以看到详细的SMTP交互信息
3.某些邮件服务商需要开启SMTP,并需要独立的SMTP登录密码

Java-Email相关推荐

  1. Java Email 发HTML邮件工具 采用 freemarker模板引擎渲染

    Java Email 发HTML邮件工具 采用 freemarker模板引擎 1.常用方式对比 Java发送邮件有很多的实现方式 第一种:Java 原生发邮件mail.jar和activation.j ...

  2. Java Email Server

    点击打开链接 Introduction Java Mail Server is a Java SMTP and POP3 e-mail server. This project was inspire ...

  3. java email怎么设置端口号_java mail 设置参数

    Session需要使用java.util.Properties来构造,常用的用来构造Session的属性: 属性名 含义 mail.smtp.user SMTP的缺省用户名. mail.smtp.ho ...

  4. java email bean_JavaWeb学习笔记-第四章JavaBean技术

    第四章 JavaBean技术 4.2.2 使用JavaBean的意义 如果使HTML代码与Java代码相分离,将Java代码单独封装成为一个处理某种业务逻辑的类,然后在JSP页面中调用此类,就可以降低 ...

  5. java email qq邮箱 与 阿里企业邮箱/个人邮箱

    贴一个例子仅供参考  QQ邮箱 import org.apache.commons.mail.DefaultAuthenticator; import org.apache.commons.mail. ...

  6. java email邮件发送465

    为什么使用465端口呢: 因为阿里云服务器以安全为由将25端口给封了,无法使用25号端口发送邮件,所以只有使用465端口啦. 实现java发送邮件的过程大体有以下几步: 1. 准备一个properti ...

  7. 基于JSP的JAVA email邮件系统研发

    欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye2 摘 要 由于网络中邮件管理系统繁多.业务需求多变,基于各邮件服务器的邮件管理系统的维护和业务变 ...

  8. 基于java Email的电子邮件发送

    Email 电子邮件,用java实现email的发送,首先我们需要了解一下email发送的大概过程.简单来说,发送email,需要从用户的电脑邮件软件(MUA),发送到邮件服务器(MTA)上,在通过若 ...

  9. 使用Java Email发送邮件

    前言Email就是电子邮件.电子邮件的应用已经有几十年的历史了,我们熟悉的邮箱地址比如abc@example.com,邮件软件比如Outlook.网易闪电邮.Foxmail都是用来收发邮件的.当然,使 ...

  10. 网络编程----基于Java Email的电子邮件发送

    前言 电子邮件(electronic mail,简称E-mail,标志:@)又称电子信箱.电子邮政,它是-种用电子手段提供信息交换的通信方式.电子邮件指用电子手段传送信件.单据.资料等信息的通信方法. ...

最新文章

  1. Java 中这个叫 Future 的东东,你用过嘛?
  2. 用eclispe远程调试tomcat war包形式
  3. 初学Java开发,这9本书值得一看
  4. SpringBoot maven打包源码发布到仓库配置
  5. 数据中台 VS 传统大数据平台,这 8 点区别要了解
  6. 紫米创始人张峰兼任小米笔记本总经理
  7. 算法 python实现(一) 基本常识
  8. Anaconda的安装和环境使用
  9. 宋图图的工学安装环境
  10. 三菱plc分拣程序_基于三菱PLC控制的物料分拣系统设计与实现
  11. C++11 时间编程(3)时间点表示time_point,时钟类型,当前时间获取
  12. 51单片机usb烧录电路_51单片机怎么用usb烧写程序
  13. Android手电筒制作
  14. python三门问题_三门问题之python解答
  15. 常见面试题整理--操作系统篇(每位开发者必备)
  16. Django连接SQL Server数据库,亲测成功
  17. bst latex 最大作者数_请教!如何修改bst文件,使作者姓名改为“Peng H”这样的格式...
  18. 八年程序员之书籍篇--OS/Linux(二):Kernel
  19. char (*)[]无法传给参数char **
  20. 直流单臂桥的使用注意事项:

热门文章

  1. 【有利可图网】PS实战系列:合成奇幻星空下的童话场景
  2. testlink mysql配置_testlink安装及配置
  3. 天津大学电子海图控件TjuES57Map
  4. GNU和GPL是什么
  5. C++ 中利用 _findfirst遍历所有文件夹及文件,以及findnext win10报错解决办法
  6. jquery选择器空格与大于号、加号与波浪号的区别
  7. Veins源码阅读—connectionManager模块
  8. SPH算法简介: 对我的启蒙
  9. 前端学习——JSON格式详解
  10. java号码分身_电话号码分身