今天倒腾了一天的javaWeb邮件发送,起初用163smtp服务器来做,一直抛异常,后来多次排错,终于找到了问题的原因,我打开cmd,ping了下smtp.163.com结果ping不通,不知道什么原因,然后再ping了下smtp.qq.com,结果可以用,之后我就转到了用smtp.qq.com这个邮件服务器来做,然后又有问题了,报的问题是什么没有证书,无法连接,后来才知道,smtp.qq.com的服务器是https而不是http,那我又上网查了下,解决办法也有,但是相当麻烦;
吸取前两次错误经验,我就改为了用smtp.sina.com来做,果然,成功了,因为我ping得通,而且也是http协议,发邮件是成功了,但是邮件编码问题就来了。
一大堆不是原文的编码,查了资料,才知道是pom引包的问题,做mail需要的包引错了,换为这个:
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.1</version>
</dependency>
编码也就解决了!