当前位置:  技术问答>java相关

一个smtp的问题,请高手看看

    来源: 互联网  发布时间:2017-04-02

    本文导语:  import javax.activation.*; import java.io.*; import javax.mail.*; import javax.mail.internet.*; public class TestSmtp{ private String smtp="smtp.163.com"; private String subject="Try"; private String to="hopeai@sina.com";//目的信箱 private String user="zhiweiqiu"...

import javax.activation.*;
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
public class TestSmtp{
private String smtp="smtp.163.com";
private String subject="Try";
private String to="hopeai@sina.com";//目的信箱
private String user="zhiweiqiu";//我的163信箱用户名
private String pass="010504";//我的163信箱密码
private String body="This is the mail body";
public boolean sendMail(){  
//发送一个邮件 
try { 
Properties props=System.getProperties(); 
props.put("mail.smtp.auth","true"); 
props.put("mail.smtp.host","smtp.163.com"); 
Sessionsess=Session.getDefaultInstance        (props,null);
sess.setDebug(true); 
MimeMessage msg = new MimeMessage(sess); 
msg.setDataHandler(new DataHandler(body,"text/html; charset=gb2312")); 
  msg.setFrom(new InternetAddress(smtp));
msg.setRecipients(Message.RecipientType.TO,InternetAddress.parse(to,false));
msg.setSubject(subject); 
msg.setSentDate(new Date());
System.out.println("Date set");  
Transport transport = sess.getTransport("smtp");
System.out.println("get transport");
transport.connect(smtp,user,pass);
System.out.println("connect build");
transport.send(msg); 
transport.close();
return true; 

catch (Exception e) { 
return false; 

}

public static void main(String []args){
TestSmtp sender=new TestSmtp();
boolean flag=sender.sendMail();
if(flag)
System.out.println("send successfully");
else
System.out.println("send fault");
}
}
 上面这个程序可以执行到transport.connect(smtp,user,pass);
然后便不能抛出异常了,不知道什么问题,请高手指点,谢谢

|
import javax.activation.*;
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
public class TestSmtp{
private String smtp="smtp.163.com";
private String subject="Try";
private String to="xxxxxx";//目的信箱
private String user="xxxxxxx";//我的163信箱用户名
private String pass="xxxxxxxxxx";//我的163信箱密码
private String body="This is the mail body";
private class SmtpAuthenticator extends Authenticator {
protected PasswordAuthentication getPasswordAuthentication(){
return new PasswordAuthentication
(user, pass);
}
}
public boolean sendMail(){  
//发送一个邮件 
try { 
Properties props=System.getProperties(); 
props.put("mail.smtp.auth","true"); 
props.put("mail.smtp.host",smtp); 

Session sess = Session.getDefaultInstance(props, new SmtpAuthenticator());

// Session sess=Session.getDefaultInstance        (props,null);
sess.setDebug(true); 
MimeMessage msg = new MimeMessage(sess); 
msg.setDataHandler(new DataHandler(body,"text/html; charset=gb2312")); 
  msg.setFrom(new InternetAddress(smtp));
msg.setRecipients(Message.RecipientType.TO,InternetAddress.parse(to,false));
msg.setSubject(subject); 
msg.setSentDate(new Date());
System.out.println("Date set");  
Transport transport = sess.getTransport("smtp");
System.out.println("get transport");
transport.connect(smtp,user,pass);
System.out.println("connect build");
transport.send(msg); 
transport.close();
return true; 

catch (Exception e) { 
return false; 

}

public static void main(String []args){
TestSmtp sender=new TestSmtp();
boolean flag=sender.sendMail();
if(flag)
System.out.println("send successfully");
else
System.out.println("send fault");
}
}

|
smtp.163.com发送的时候是需要认证的,如此而已

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • SMTP问题
  • java发送mail,smtp的用户名密码问题
  • sendmail smtp认证问题
  • [高分求教]Qmail的SMTP认证失效问题
  • 急,,,,,新浪SMTP的问题
  • 关于SMTP的问题
  • 关于qmail里smtp,pop3,vpopmail对防止垃圾邮件relay的问题
  • sendmail...smtp认证问题
  • smtp 问题
  • 关于qmail的smtp验证问题,有请各位大中小虾帮忙!
  • Sendmail问题:在本机安装Sendmail后,可以用本机的mail程序发邮件,但是一修改sendmail.cf中的SMTP设置就不能发送!
  • 一个很诡异的问题,我用postfix+dovecot建立邮件系统,但是smtp和pop3的验证都过不去
  • SMTP发邮件问题 邮件服务器的设置问题
  • smtp的问题
  • 急!用Java Mail通过需要登录认证的SMTP SERVER发邮件的问题。
  • 用sun.net.smtp类发送EMAIL的一点问题
  • 问个问题,redhat加sendmail建立smtp邮件服务器该如何办,125分我最多能给的了,谢谢 。急!
  • SMTP 错误:无法连接到 SMTP 主机
  • Java的SMTP服务器端类库 SubEtha SMTP
  • 高分:為什麼用smtp.163.net服務器,不能發給smtp.163.com的郵箱用戶,要怎麼做才行
  • 我的代码中已经假如smtp认证,为什么在tomcat上还提示客户端没有验证?使用smtp.sohu.com或smtp.sina.com.cn都不行代码如下:
  • PHP邮件发送类 SMTP client class
  • 获取对方的 smtp server ,最高分求助!
  • 用linux做smtp服务器怎么弄
  • 用JavaMail发信(Smtp)怎么加身份验证????
  • SMTP邮件服务器 Postoffice
  • qmail 如何加smtp认证功能?
  • Eclipse的SMTP插件 MailSnag
  • SMTP代理 Mireka
  • LINUX的SMTP源代码在哪儿可以下载到!
  • 请教javamail的smtp验证!在线等待


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3