如何使用IMAP服务?

首先介绍一些邮件发送的基础知识,如果你已经知道可以跳过。

直接到 Email 邮件发送实现的部分。

IMAP是什么?

IMAP,即Internet Message Access Protocol(互联网邮件访问协议),您可以通过这种协议从邮件服务器上获取邮件的信息、下载邮件等。

IMAP与POP类似,都是一种邮件获取协议。

IMAP和POP有什么区别?

POP允许电子邮件客户端下载服务器上的邮件,但是您在电子邮件客户端的操作(如:移动邮件、标记已读等),这是不会反馈到服务器上的,比如:您通过电子邮件客户端收取了QQ邮箱中的3封邮件并移动到了其他文件夹,这些移动动作是不会反馈到服务器上的,也就是说,QQ邮箱服务器上的这些邮件是没有同时被移动的。

但是IMAP就不同了,电子邮件客户端的操作都会反馈到服务器上,您对邮件进行的操作(如:移动邮件、标记已读等),服务器上的邮件也会做相应的动作。

也就是说,IMAP是“双向”的。

同时,IMAP可以只下载邮件的主题,只有当您真正需要的时候,才会下载邮件的所有内容。

如何使用IMAP服务?

使用IMAP很简单,首先,您需要先在QQ邮箱中启用IMAP功能,然后,配置好客户端,就可以使用了。

开启 SMTP 服务

QQ 邮箱

【设置】-【账户】-【POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务】

最下边开启

  • POP3/SMTP 服务
  • IMAP/SMTP 服务

网易 163 邮箱

网易相对比较简单,直接开启【授权码】

Email

Email 是基于 java 实现的发送邮件的工具包,力求简单优雅。

创作缘由

看了各种 email 工具感觉没有想象中方便。

就自己实现一个,后续会陆续加入新的特性。

特性

  • Fluent 流式语法
  • 网易 163 邮箱的发送支持
  • 支持发送给多个收件人,多个(秘密)抄送者

快速开始

环境要求

jdk7+

maven 3.x+

引入

<plugin><groupId>com.github.houbb</groupId><artifactId>email</artifactId><version>0.0.2</version>
</plugin>

发送邮件

此处密码为网易邮箱对应的授权码。

EmailBs.auth("xxx@163.com", "xxx").content("自定义内容").sendTo("xxx@yy.com");

这里会通过 xxx@163.com 发送给 xxx@yy.com 一封邮件。

邮件标题默认为无标题,内容为你的自定义内容。

你可以通过指定,配置更多丰富的特性。

方法列表

使用的例子

你可以指定多个收件人以及抄送人。

示例代码如下:

EmailBs.auth("xxx@163.com", "xxx").content("自定义主题", "自定义内容").cc("抄送者1@xx.com", "抄送者2@xx.com").bcc("秘密抄送者1@xx.com", "秘密抄送者2@xx.com").sendTo("收件人1@xx.com", "收件人2@xx.com");

后续特性

  • 支持常见邮箱
  • 支持邮件模板

拓展阅读

更多实时资讯,前沿技术,生活趣事。尽在公众号【老马啸西风】

参考资料

java实现邮箱发送邮件功能

java基础实现邮件发送(以qq和网易为例)

javamail实现解析邮箱收件箱

android javamail获取邮件太多太慢_java 实现 email 邮件发送最简单优雅的方式(网易 163 为例)相关推荐

  1. android javamail获取邮件太多太慢_「Java」 - SpringBoot amp; 邮件发送

    发送邮件是web应用系统的必备功能之一,用于用户注册验证.忘记密码找回或者发送营销信息.最早期使用JavaMail相关API写发送邮件的相关代码,后来Spring推出了JavaMailSender简化 ...

  2. android javamail获取邮件太多太慢_结合 Spring 发送邮件的4种正确姿势,你知道几种?...

    Java程序猿阿谷:面试字节跳动三轮凉凉,内推4面终拿下抖音offer(Java后台研发)​zhuanlan.zhihu.com 一.前言 测试所使用的环境 测试使用的环境是企业主流的SSM 框架即 ...

  3. Android开发获取当前经纬度和详细位置信息(原生代码实现)简单案例

    文章目录 Android定位(经纬度+当前位置信息) 申请权限 LocationManage位置管理器 完整代码 Android定位(经纬度+当前位置信息) 我相信大家在Android开发中应该都有遇 ...

  4. Android开发——获取微信聊天记录(后台秘密发邮件)

    1. 首先先展示一下效果图: 2. Accessibility机制 Accessibility机制之前已经介绍过了,具体可以查看Accessibility机制实现模拟点击,需要简单的配置(如设置被监听 ...

  5. java读取邮箱附件_使用javamail获取附件内容

    我正在使用javamail来自动化一些电子邮件处理.使用javamail获取附件内容 我设法连接到pop3服务器并获取消息.其中一些包含附件.根据邮件标题,我可以"预测"我需要获取 ...

  6. Android系统信息获取 之十:移动网络相关信息获取

    Android平台移动网络信息主要是通过TelephonyManager类来获取的,通过前面对TelephonyManager的观察Android系统信息获取 之九:TelephonyManager类 ...

  7. 【Android】获取当前的app中cpu和内存的百分比 -调研报告

    背景 项目要求获取当前app运行时的cpu和内存状况. 调研 CPU获取 Android实现获取当前的app的cpu实时使用情况的代码 以下是获取当前app的CPU实时使用情况的代码(Java): p ...

  8. Unity实现在Android端获取Android手机的唯一ID(设备号)(亲测Android11可用)

    Unity实现在Android端获取Android手机的唯一ID(设备号)(亲测Android11可用) 备注:测试版本Unity2020,理论上Unity2018以上都可用,未做测试 - 文章初衷 ...

  9. 内网java发送邮件_基于JavaMail的Java邮件发送:简单邮件发送

    电子邮件的应用非常广泛,例如在某网站注册了一个账户,自动发送一封欢迎邮件,通过邮件找回密码,自动批量发送活动信息等.但这些应用不可能和我们自己平时发邮件一样,先打开浏览器,登录邮箱,创建邮件再发送.本 ...

最新文章

  1. ECCV 2020 Spotlight | 图像定位上的细粒化区域相似性自监督
  2. JavaScript基础知识(Date 的方法)
  3. DSO 中的Windowed Optimization
  4. “非常有用”的JavaScript 和 CSS 库插件推荐
  5. 移动端小总结(1)---meta、input和单行多行文字溢出省略号
  6. Web***系列教程之跨站脚本***和防范技巧详解
  7. 网格法对随机森林调参
  8. linux文本编辑器下载,Linux文本编辑器Jed
  9. 计算机科学 院士 高校,快报!第5轮学科评估计算机科学与技术评委会名单,看有谁上榜了...
  10. Linux 系统时间 EST 改 CTS
  11. 自学编程,10个程序员学习必收藏的编程网站,你知道几个?
  12. 常说的LDO电路是啥?(简单版)
  13. Fanuc机器人配置伺服焊枪完整步骤
  14. 活动详情页面html代码,折扣活动详情.html
  15. JavaEE项目实战_流程审批之二
  16. 基于卷积神经网络的地铁平台人群计数
  17. 虹软Linux离线激活,虹软linux错误
  18. windows服务器dmp文件分析,如何用WinDbg分析MEMORY.DMP文件
  19. 遗传编程(Genetic Programming, GP)
  20. 杂谈:用户的搜索意图(intention of SE users)

热门文章

  1. Linux 交换空间优化(swap 优化)(积极使用交换空间占比,可能会使程序运行缓慢!)
  2. 【深度学习的数学】单层感知机是什么?
  3. Intel Realsense python 关于能否使用单个align对象去处理多个流 (对齐process)
  4. opencv python destroyAllWindows() destroyWindow() 销毁窗口
  5. Python---Pickle模块
  6. 二进制、八进制、十六进制和十进制的相互转换,原码反码补码计算以及Java中数字的存储
  7. PAT甲级题目翻译+答案 AcWing(动态规划)
  8. Linux环境下安装OpenOffice 4.1.8
  9. php不用密码登录,使用散列密码登录PHP
  10. HashMap底层实现原理,红黑树,B+树,B树的结构原理,volatile关键字,CAS(比较与交换)实现原理