javamail发送的简单封装 qq需要加ssl加密

javamail是Sun发布的用来处理email的API。javamail api有几个核心类,分别是Session,Message,Address,Authenticator,Transport,Store,Folder,MimeMessage,InternetAddress.关于这些的介绍肯定是api文档介绍的详细或者上网随便一搜一大片。

接下来简单说一下封装之前的步骤以及一个我在封装过程中遇到的问题,网上对于这个问题的一些答案感觉是错的。

在封装之前我们要去邮箱的设置里打开POP3/SMTP服务。如图


javamail发送的简单封装 qq需要加ssl加密_第1张图片
开启服务

以qq邮箱为例,开启之前右上角的箭头指向的应该是开启,点击开启,之后点击生成授权码,这个授权码就是之后封装时候的密码。拿到授权码我们就可以开始封装了。

问题:封装过程中如果不开启ssl加密,如图


javamail发送的简单封装 qq需要加ssl加密_第2张图片
ssl加密

上图是开启的代码,如果没有这段开启的代码那么他就会提示如下错误,


javamail发送的简单封装 qq需要加ssl加密_第3张图片
530错误

这个错误,上网之后你搜530 Error: A secure connection is requiered(such as ssl)会出现让你将smtp.qq.com改为smtp.exmail.qq.com 按他的改了之后再次运行又会有如下错误


javamail发送的简单封装 qq需要加ssl加密_第4张图片
535错误

这个提示你封装的时候密码需要使用授权码,但我们确实是用了授权码啊。

其实这个问题只要你开启了ssl加密之后就会解决,而对于163邮箱来说没有这个ssl加密也可以正常运行。对于邮箱是否需要ssl加密,我只试了163和qq,qq需要163不需要。

最后放上源码地址:javamailDemo源码地址

你可能感兴趣的:(javamail发送的简单封装 qq需要加ssl加密)