java使用IMAP实现邮件发送
IMAP(Internet Mail Access Protocol)以前称作交互邮件访问协议(Interactive Mail Access Protocol),是一个应用层协议。IMAP是斯坦福大学在1986年开发的一种邮件获取协议。它的主要作用是邮件客户端可以通过这种协议从邮件服务器上获取邮件的信息,下载邮件等。当前的权威定义是RFC3501。IMAP协议运行在TCP/IP协议之上,使用的端口是143。它与POP3协议的主要区别是用户可以不用把所有的邮件全部下载,可以通过客户端直接对服务器上的邮件进行操作。
特点
与POP3协议类似,IMAP(Internet消息访问协议)也是提供面向用户的邮件收取服务。常用的版本是IMAP4。IMAP4改进了POP3的不足,用户可以通过浏览信件头来决定是否收取、删除和检索邮件的特定部分,还可以在服务器上创建或更改文件夹或邮箱。它除了支持POP3协议的脱机操作模式外,还支持联机操作和断连接操作。它为用户提供了有选择的从邮件服务器接收邮件的功能、基于服务器的信息处理功能和共享信箱功能。IMAP4的脱机模式不同于POP3,它不会自动删除在邮件服务器上已取出的邮件,其联机模式和断连接模式也是将邮件服务器作为“远程文件服务器”进行访问,更加灵活方便。IMAP4支持多个邮箱。IMAP4的这些特性非常适合在不同的计算机或终端之间操作邮件的用户(例如你可以在手机、PAD、PC上的邮件代理程序操作同一个邮箱),以及那些同时使用多个邮箱的用户。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 邮箱网易相对比较简单,直接开启【授权码】
EmailEmail 是基于 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");
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。