Sender -> Sender's SMTP server -> Receiver's SMTP server -> Receiver
正常流程,SMTP是这样应用的,需要自己的服务器中转。
其实可以直接Sender - > Receiver's SMTP server ->Receiver.
Foxmail里面其实也是支持这个的,叫特快信,需要设置一下DNS.
因为模拟成邮件服务器,给其他邮件服务器发信应该是不需要验证身份的,而且可以乱填发信人的名字,这个就是所谓的匿名信,其实就是垃圾邮件了。但是现在的邮件服务器过滤比较牛了,可以逆向,知道你的发送IP是动态IP,或者逆向发送者的邮箱例如sender@AAA.com, 发现你的IP和DNS找到的AAA.com不匹配估计就知道是乱发,猜测,以下代码很都服务器都发送不了了 :) 但是学习之用。 如果你能使用原始套接字伪装你的IP或者真可以发匿名信了。
正常流程,SMTP是这样应用的,需要自己的服务器中转。
其实可以直接Sender - > Receiver's SMTP server ->Receiver.
Foxmail里面其实也是支持这个的,叫特快信,需要设置一下DNS.
因为模拟成邮件服务器,给其他邮件服务器发信应该是不需要验证身份的,而且可以乱填发信人的名字,这个就是所谓的匿名信,其实就是垃圾邮件了。但是现在的邮件服务器过滤比较牛了,可以逆向,知道你的发送IP是动态IP,或者逆向发送者的邮箱例如sender@AAA.com, 发现你的IP和DNS找到的AAA.com不匹配估计就知道是乱发,猜测,以下代码很都服务器都发送不了了 :) 但是学习之用。 如果你能使用原始套接字伪装你的IP或者真可以发匿名信了。
SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first
最重要的問題是在他的SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first
錯誤, 要在System.Properties進行宣告如下:
最重要的問題是在他的SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first
錯誤, 要在System.Properties進行宣告如下:
复制内容到剪贴板 程序代码
props.put("mail.transport.protocol", "smtp"); //之前没加
props.put("mail.smtp.starttls.enable","true"); //之前没加
props.put("mail.smtp.host", "gmail-smtp.l.google.com");
props.put("mail.smtp.starttls.enable","true"); //之前没加
props.put("mail.smtp.host", "gmail-smtp.l.google.com");
Tags: javamail
在浪潮的时候公司有人写工作日报的时候用java实现了自动发邮件功能,公司的人都称他为才子。当时也觉得他很了不起得,现在才知道,原来用java实现发邮件功能是如此简单。
java实现发邮件的功能是用j2ee技术javamail实现的。其实程序很简单,只有几十行的程序。最困难的反而是实现smtp服务器的设置,这和程序无关,而要在本机上设置。结果我在这一项上让我大费了一番周折。
我的是yahoo邮箱,刚开始老是提示出错。在网上查的时候有的人说是因为yahoo邮箱不支持pop3功能。至于什么是pop3功能,大家可以到网上自己看下,大概就是说要实现outlook、foxmail这样的桌面程序来接发邮件就得用到pop3功能。没办法,只能申请了个126邮箱,结果一用还是不行,又到网上查,却有人说老的126的邮箱支持pop功能,去年之后的126邮箱不支持。还有些人说要一个月以后或者说积分达到一定值才可以实现,总之就是不行,真气死我了。又申请了个163邮箱,一用还是不行,仍然不支持pop功能。昨天搞了一下午仍然不行。今天仍然不死心,继续在网上查解决方法,总算有好心人给出了yahoo邮箱的解决方法。把网上别人介绍的方法贴在这:
1. 在IE地址栏中直接输人
http://edit.my.yahoo.com/config/set_popfwd?.src=ym,进人到YAHOO!“网上直投”的页面。
java实现发邮件的功能是用j2ee技术javamail实现的。其实程序很简单,只有几十行的程序。最困难的反而是实现smtp服务器的设置,这和程序无关,而要在本机上设置。结果我在这一项上让我大费了一番周折。
我的是yahoo邮箱,刚开始老是提示出错。在网上查的时候有的人说是因为yahoo邮箱不支持pop3功能。至于什么是pop3功能,大家可以到网上自己看下,大概就是说要实现outlook、foxmail这样的桌面程序来接发邮件就得用到pop3功能。没办法,只能申请了个126邮箱,结果一用还是不行,又到网上查,却有人说老的126的邮箱支持pop功能,去年之后的126邮箱不支持。还有些人说要一个月以后或者说积分达到一定值才可以实现,总之就是不行,真气死我了。又申请了个163邮箱,一用还是不行,仍然不支持pop功能。昨天搞了一下午仍然不行。今天仍然不死心,继续在网上查解决方法,总算有好心人给出了yahoo邮箱的解决方法。把网上别人介绍的方法贴在这:
1. 在IE地址栏中直接输人
http://edit.my.yahoo.com/config/set_popfwd?.src=ym,进人到YAHOO!“网上直投”的页面。
Tags: javamail
如果你用myEclipse进行开发的话,运行时可能会出现以下的错误:
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream
原因是jar包版本不统一,解决方法如下:
删除Java EE 5 Libraries/javaee.jar/mail里的包有东西.
具体方法如下:
用rar打开X:/Program Files/MyEclipse 6.0/myeclipse/eclipse/plugins/com.genuitec.eclipse.j2eedt.core_6.0.1.zmyeclipse601200710/data/libraryset/EE_5/javaee.jar
,然后删除mail,一切就ok了.
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream
原因是jar包版本不统一,解决方法如下:
删除Java EE 5 Libraries/javaee.jar/mail里的包有东西.
具体方法如下:
用rar打开X:/Program Files/MyEclipse 6.0/myeclipse/eclipse/plugins/com.genuitec.eclipse.j2eedt.core_6.0.1.zmyeclipse601200710/data/libraryset/EE_5/javaee.jar
,然后删除mail,一切就ok了.