java怎么实现邮箱机制_JAVAMAIL实现与详细机制

本文分享了作者在使用JavaMail发送电子邮件时遇到的问题,包括SMTP协议未开通和会话属性设置错误。重点提示读者检查邮箱SMTP/POP3设置,并正确配置`mail.smtp.auth`参数。新手必读,避免常见陷阱。
摘要由CSDN通过智能技术生成

今天花了很长时间看了javamail 的机制,然后又花了一上午时间写完了完整代码(仿照前辈代码),但是一直没有成功,因为我想在web中实现邮件的发送,所以就一直在不停的找错误,现在错误终于找到了。

错误1:

发送人的邮箱没有开通smtp和pop3协议(后有详细说明)。具体方法就是打开你的邮箱,然后在设置中开通此协议(可以百度,这里就不赘述了)

错误2:

在邮件会话属性中没有正确定义。

publicProperties getProperties(){

Properties p= newProperties();

p.put("mail.smtp.host", this.mailServerHost);

p.put("mail.smtp.port", this.mailServerPort);

p.put("mail.smtp.auth", validate ? "true" : "false");returnp;

}

如上代码,p.put("mail.smtp.auth",validate),一开始我就这么写的,但是一直不成功,抛出异常信息是:com.sun.mail.smtp.SMTPSendFailedException: 503 Error: need EHLO and AUTH first !

后来百度的一通才知道p.put("mail.smtp.auth","true"//"flase"); 参数是以字符串形式给出的(我是这样理解的,但是看源文件,发现这个Properties.put方法继承了哈希表,但我还是这么理解虽然哈希表中的类型是object)。

以上两个错误发表出来希望大家能够注意 ,小白一枚 ,还请大神不吝赐教。

最后,我还是再去写一遍程序吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值