JavaMail

JavaMail是JavaEE的一部分,提供了处理电子邮件的API,常用于SMTP发送邮件和POP3/IMAP接收邮件。SMTP用于发送,POP3用于接收,而IMAP则允许在服务器上管理邮件。使用JavaMail需要引入额外的依赖,并且可以处理包括MIME附件在内的非纯文本内容。
摘要由CSDN通过智能技术生成

JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。JavaMail是由Sun定义的一套收发电子邮件的API,它可以方便地执行一些常用的邮件传输,不同的厂商可以提供自己的实现类。但它并没有包含在JDK中,而是作为JavaEE的一部分。

厂商所提供的JavaMail服务程序可以有选择地实现某些邮件协议,常见的邮件协议包括:

SMTP:单间邮件传输协议,用于发送电子邮件的传输协议

POP3:用于接受电子邮件的标准协议

IMAP:互联网消息协议,是POP3的替代协议

这三种协议都有对应SSL加密传输协议,分贝是SMTPS,POP3S和IMAPS。除JavaMail服务提供程序之外,JavaMail还需要JAF(JavaBeans Activation Framework)来处理不是纯文本的邮件内容,这包括MIME(多用途互联网邮件扩张)、URL页面和文件附件等内容。

一、什么是SMTP、POP3、IMAP?

学习Java发送邮件,必然会涉及到的一个术语就是SMTP,而且在邮箱中设置SMTP的时候我们还会看到另外两个术语:POP3和IMAP。那什么是SMTP、POP3、IMAP呢?

简单的说,这三个都是邮件收发相关的三种协议。

SMTP:全称是“Simple Mail Transfer Protocol”,简单邮件传输协议,它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。用于发送电子邮件的传输协议;

POP3:全称是"Post Office Protocol 3",是邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。用于接收电子邮件的标准协议;

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

二、利用JavaMail发送邮件

JavaMail是Oracle官方提供的一组API库,并没有包含在标准的JDK中,使用时需要我们自己引入依赖,github地址:https://github.com/javaee/javamail。官方提供的这个库能实现对邮件的各种操作,如果感兴趣的可以参考官方提供的使用demo和指导手册详细研究,我们今天仅通过发送邮件这个动作来了解一下这个类库的基本使用。

javaMail的详细文档,都有以下多有类的详细信息: ACL Address AddressException AddressStringTerm AddressTerm AndTerm AuthenticationFailedException Authenticator BodyPart BodyTerm ByteArrayDataSource ComparisonTerm ConnectionAdapter ConnectionEvent ConnectionListener ContentDisposition ContentType DateTerm DeliveryStatus DispositionNotification FetchProfile FetchProfile.Item Flags Flags.Flag FlagTerm Folder FolderAdapter FolderClosedException FolderEvent FolderListener FolderNotFoundException FromStringTerm FromTerm Header HeaderTerm HeaderTokenizer HeaderTokenizer.Token IllegalWriteException IMAPFolder IMAPFolder.FetchProfileItem IMAPFolder.ProtocolCommand IMAPMessage IMAPSSLStore IMAPStore IntegerComparisonTerm InternetAddress InternetHeaders InternetHeaders.InternetHeader MailDateFormat MailEvent MailHandler MailSSLSocketFactory Message Message.RecipientType MessageAware MessageChangedEvent MessageChangedListener MessageContext MessageCountAdapter MessageCountEvent MessageCountListener MessageHeaders MessageIDTerm MessageNumberTerm MessageRemovedException MessagingException MethodNotSupportedException MimeBodyPart MimeMessage MimeMessage.RecipientType MimeMultipart MimePart MimePartDataSource MimeUtility Multipart MultipartDataSource MultipartReport NewsAddress NoSuchProviderException NotTerm OrTerm ParameterList ParseException Part PasswordAuthentication POP3Folder POP3Message POP3SSLStore POP3Store PreencodedMimeBodyPart Provider Provider.Type Quota Quota.Resource QuotaAwareStore ReadOnlyFolderException ReceivedDateTerm RecipientStringTerm RecipientTerm Report Rights Rights.Right SearchException SearchTerm SendFailedException SentDateTerm Service Session SharedByteArrayInputStream SharedFileInputStream SharedInputStream SizeTerm SMTPAddressFailedException SMTPAddressSucceededException SMTPMessage SMTPSendFailedException SMTPSSLTransport SMTPTransport Store StoreClosedException StoreEvent StoreListener StringTerm SubjectTerm Transport TransportAdapter TransportEvent TransportListener UIDFolder UIDFolder.FetchProfileItem URLName
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值