java程序发送邮件_java程序发送邮件

以前没有做过邮件,现在我完全和大家一样都是个新手,一切都慢慢学吧!下面是我学习过程中的总结的一些经验,希望和对邮件感兴趣的朋友一起学习和分享!

1.新建了一个java project ,刚开始,就简单一点,下面的代码直接写在main函数里:

Properties properties=new Properties();

properties.setProperty("mail.smtp.auth", "true");//提供验证

properties.setProperty("mail.transport.protocol", "smtp");//使用的协议 这里是smtp协议

Session session=Session.getInstance(properties);

session.setDebug(true);//开启调试 控制台会输出 请求与服务器之间的对话信息

Message message =new MimeMessage(session);

message.setFrom(new InternetAddress("dyy@163.com"));//发件人地址

message.setText("this is a simple mail");//发件内容

Transport transport=session.getTransport();

transport.connect("smtp.163.com",25,"dyyweb@163.com","密码of你地^_^");//连接邮件服务器(服务器地址,端口,用户名,密码)

transport.sendMessage(message,new Address[]{new InternetAddress("dyyweb@163.com")});//当message中提供收件人地址时,则这里收件人地址可有可无

//transport.send(message,new Address[]{new InternetAddress("dyyweb@163.com")});//静态方法

transport.close();

由于我使用sun提供的javamail开发的,故此在运行project之前要导入相关资源包,我导的是mail.jar (全部功能包),

ok,一切都准备好了,开始run....

出现bug了,原来javamail还需要调用第三方JAF才能把邮件发出去,为此我把activation.jar导入,哈哈果然通过验证了...

靠,但还是发送不成功!这时候我开始调试,查找原因,最后把发件人改成真实的地址..再run...

oh,yes, 终于成功了...控制台打印详细信息如下:

DEBUG: setDebug: JavaMail version 1.4.3

DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]

DEBUG SMTP: useEhlo true, useAuth true

DEBUG SMTP: trying to connect to host "smtp.163.com", port 25, isSSL false

220 163.com Anti-spam GT for Coremail System (163com[20090903])

DEBUG SMTP: connected to host "smtp.163.com", port: 25

EHLO dengyang

250-mail

250-PIPELINING

250-AUTH LOGIN PLAIN

250-AUTH=LOGIN PLAIN

250-coremail 1Uxr2xKj7kG0xkI17xGrUDI0s8FY2U3Uj8Cz28x1UUUUU7Ic2I0Y2UFFLaXiUCa0xDrUUUUj

250 8BITMIME

DEBUG SMTP: Found extension "PIPELINING", arg ""

DEBUG SMTP: Found extension "AUTH", arg "LOGIN PLAIN"

DEBUG SMTP: Found extension "AUTH=LOGIN", arg "PLAIN"

DEBUG SMTP: Found extension "coremail", arg "1Uxr2xKj7kG0xkI17xGrUDI0s8FY2U3Uj8Cz28x1UUUUU7Ic2I0Y2UFFLaXiUCa0xDrUUUUj"

DEBUG SMTP: Found extension "8BITMIME", arg ""

DEBUG SMTP: Attempt to authenticate

DEBUG SMTP: check mechanisms: LOGIN PLAIN DIGEST-MD5 NTLM

AUTH LOGIN

334 dXNlcm5hbWU6

ZHl5d2ViQDE2My5jb20=

334 UGFzc3dvcmQ6

ZGVuZ3lhbmd3ZWJAIw==

235 Authentication successful

DEBUG SMTP: use8bit false

MAIL FROM:

250 Mail OK

RCPT TO:

250 Mail OK

DEBUG SMTP: Verified Addresses

DEBUG SMTP:dyyweb@163.com

DATA

354 End data with .

From:dyyweb@163.com

Message-ID: <28571689.0.1273067952820.JavaMail.Administrator@dengyang>

MIME-Version: 1.0

Content-Type: text/plain; charset=us-ascii

Content-Transfer-Encoding: 7bit

this is a simple mail

.

250 Mail OK queued as smtp4,DtGowLD7H6GmeeFLzHj8AA--.6201S2 1273067942

QUIT

221 Bye

打开邮箱查看信息,果然成功收到我用自己的程序写的邮件 ,很开心,我终于可以用自己的程序给别人发邮件了,哈哈

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值