星涯无痕 2016-01-26 07:29 采纳率: 0%
浏览 2259

java 用QQ邮箱发邮件问题

代码如下:

private static final String account = "xxx@qq.com";
    private static final String password = "xxx";
    private static final String host = "smtp.qq.com";
    //  private static final String account = "xxx@163.com";
//  private static final String password = "xxx";
//  private static final String host = "smtp.163.com";
 public static void main(String[] args) {
        String content = "dfaferdfgfd";
        Session session = getSession();  
            MimeMessage message = new MimeMessage(session);  
            try {  
                message.setSubject("找回您的帐户与密码");  
                message.setSentDate(new Date());  
                message.setFrom(new InternetAddress(account));  
                message.setRecipient(RecipientType.TO, new InternetAddress(to));  
                message.setContent(content,"text/html;charset=utf-8");  
                // 发送邮件  
                System.out.println("sendResetPasswordEmail:邮件发送-->");
                Transport.send(message);  
            } catch (Exception e) {  
                e.printStackTrace();  
            }  
    }
    public static Session getSession() {  
        Security.getProviders();       
        Properties props = new Properties();  
        props.setProperty("mail.transport.protocol", "smtp");  
        props.setProperty("mail.smtp.host", host);  
        props.setProperty("mail.smtp.port", "25");  
        props.setProperty("mail.smtp.auth", "true"); 
//          props.setProperty("mail.smtp.ssl.enable", "false"); 
//          props.setProperty("mail.smtp.socketFactory.class","javax.net.ssl.SSLSocketFactory"); 
//          props.setProperty("mail.smtp.port","465");
//          props.setProperty("mail.smtp.socketFactory.port","465");
        Session session = Session.getInstance(props, new Authenticator() {  
            @Override  
            protected PasswordAuthentication getPasswordAuthentication() {  
                return new PasswordAuthentication(account, password);  
            }  

        });  
        session.setDebug(true);
        return session;  
    } 

使用163邮箱发送邮件正常,用QQ邮箱发送就报错了。报错如图,邮箱帐号密码是正确的
图片说明

  • 写回答

2条回答 默认 最新

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?