java程序发送邮件
2010-12-08 14:15
302 查看
以前没有做过邮件,现在我完全和大家一样都是个新手,一切都慢慢学吧!下面是我学习过程中的总结的一些经验,希望和对邮件感兴趣的朋友一起学习和分享! 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:<dyyweb@163.com> 250 Mail OK RCPT TO:<dyyweb@163.com> 250 Mail OK DEBUG SMTP: Verified Addresses DEBUG SMTP: dyyweb@163.com DATA 354 End data with <CR><LF>.<CR><LF> 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 打开邮箱查看信息,果然成功收到我用自己的程序写的邮件 ,很开心,我终于可以用自己的程序给别人发邮件了,哈哈 |
相关文章推荐
- Java程序发送邮件的两种方法
- JAVA程序调用javax.mail发送邮件
- java发送邮件程序
- 一个用java发送邮件的简单小程序
- 用Java编写邮件发送程序
- Java程序发送邮件的两种方法
- java实现发送邮件的程序
- java程序发送邮件
- Java程序发送邮件
- Java程序发送邮件的两种方法
- java程序发送邮件简单例子
- java发送邮件程序
- 如何在java程序里面发送html邮件
- 【转】javamail-基于SMTP的JAVA邮件发送程序!
- java程序发送邮件以及可能出现的问题
- JavaMail SMTP服务器发送邮件程序示例 java通过dns服务器解析ip地址
- 基于SMTP的JAVA邮件发送程序!
- Java调用本机程序完成打开网页、发送邮件和编辑文件
- Java邮件发送程序(可以同时发给多个地址、可以带附件)
- java程序监控tomcat实现项目宕机自动重启并发送邮件提醒