通过java给qq邮箱发送信息

通过java程序给qq邮箱发送信息。

1、第一步:下载mail的jar包:javax.mail.jar

  下载地址:https://javaee.github.io/javamail/#Latest_News

  

2、直接使用下面的代码

public static void sendMessages() {
        try {
            //创建Properties 类用于记录邮箱的一些属性
            final Properties props = new Properties();
            //表示SMTP发送邮件,必须进行身份验证
            props.put("mail.smtp.auth", "true");
            //此处填写SMTP服务器
            props.put("mail.smtp.host", "smtp.qq.com");
            //端口号,QQ邮箱给出了两个端口,这里给出587
            props.put("mail.smtp.port", "587");
            //此处填写你的账号
            props.put("mail.user", "你的qq号@qq.com");
            //此处的密码就是前面说的16位STMP口令
            //获取口令
            props.put("mail.password", "你的口令");
            //构建授权信息,用于进行SMTP进行身份验证
            Authenticator authenticator = new Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    // 用户名、密码
                    String userName = props.getProperty("mail.user");
                    String password = props.getProperty("mail.password");
                    return new PasswordAuthentication(userName, password);
                }
            };
            //使用环境属性和授权信息,创建邮件会话
            Session mailSession = Session.getInstance(props, authenticator);
            //创建邮件消息
            MimeMessage message = new MimeMessage(mailSession);
            //设置发件人
            InternetAddress form = new InternetAddress(props.getProperty("mail.user"));
            message.setFrom(form);

            //设置收件人的邮箱
            InternetAddress to = new InternetAddress("收件人邮箱@qq.com");
            message.setRecipient(RecipientType.TO, to);

            //设置邮件主题
            message.setSubject("测试邮件");
            //设置消息日期
            message.setSentDate(new Date());

            //html文件
            StringBuilder sb = new StringBuilder();
            sb.append("<h1>文本内容</h1>");
            //设置邮件的内容体
            message.setContent(sb.toString(), "text/html;charset=UTF-8");

            //最后当然就是发送邮件
            Transport.send(message);
            System.out.println("发送成功!");
        } catch (AddressException e) {
            System.out.println("发送失败!"+e.getMessage());
            e.printStackTrace();
        } catch (MessagingException e) {
            System.out.println("发送失败!"+e.getMessage());
            e.printStackTrace();
        }
    }

3、上面代码中主要填写三个地方

  ①:发送的邮箱号

  ②:发送的邮箱号的口令(在下面会介绍如何获取)

  ③:接收人的邮箱号

4、这样就可以发送邮箱给别人了。

  代码参考:https://blog.csdn.net/qq_41750725/article/details/83831589

5、如何获取发送人的口令

  ①:登录发送方的qq邮箱-》找到账号
  

  ②:拉到下面,找到需要开启的服务,然后把相应的服务开启即可。

  

  ③:开启之后,就会获取到一个16位的口令了。

  ④:具体参考:https://jingyan.baidu.com/article/fedf0737af2b4035ac8977ea.html

上面的方法只是以qq邮箱为例子,其他的邮箱也是差不多同样的操作。下面提供各个邮箱的邮件服务器和端口号

sina.com:
POP3服务器地址:pop3.sina.com.cn(端口:110)
SMTP服务器地址:smtp.sina.com.cn(端口:25) 

sinaVIP:
POP3服务器:pop3.vip.sina.com (端口:110)
SMTP服务器:smtp.vip.sina.com (端口:25)

sohu.com:
POP3服务器地址:pop3.sohu.com(端口:110)
SMTP服务器地址:smtp.sohu.com(端口:25)

126邮箱:
POP3服务器地址:pop.126.com(端口:110)
SMTP服务器地址:smtp.126.com(端口:25)

139邮箱:
POP3服务器地址:POP.139.com(端口:110)
SMTP服务器地址:SMTP.139.com(端口:25)

163.com:
POP3服务器地址:pop.163.com(端口:110)
SMTP服务器地址:smtp.163.com(端口:25)

QQ邮箱
POP3服务器地址:pop.qq.com(端口:110)
SMTP服务器地址:smtp.qq.com (端口:25)

QQ企业邮箱
POP3服务器地址:pop.exmail.qq.com (SSL启用 端口:995)
SMTP服务器地址:smtp.exmail.qq.com(SSL启用 端口:587/465)

yahoo.com:
POP3服务器地址:pop.mail.yahoo.com
SMTP服务器地址:smtp.mail.yahoo.com

yahoo.com.cn:
POP3服务器地址:pop.mail.yahoo.com.cn(端口:995)
SMTP服务器地址:smtp.mail.yahoo.com.cn(端口:587

HotMail
POP3服务器地址:pop3.live.com (端口:995)
SMTP服务器地址:smtp.live.com (端口:587)

gmail(google.com)
POP3服务器地址:pop.gmail.com(SSL启用 端口:995)
SMTP服务器地址:smtp.gmail.com(SSL启用 端口:587)

263.net:
POP3服务器地址:pop3.263.net(端口:110)
SMTP服务器地址:smtp.263.net(端口:25)

263.net.cn:
POP3服务器地址:pop.263.net.cn(端口:110)
SMTP服务器地址:smtp.263.net.cn(端口:25)

x263.net:
POP3服务器地址:pop.x263.net(端口:110)
SMTP服务器地址:smtp.x263.net(端口:25)

21cn.com:
POP3服务器地址:pop.21cn.com(端口:110)
SMTP服务器地址:smtp.21cn.com(端口:25)

Foxmail:
POP3服务器地址:POP.foxmail.com(端口:110)
SMTP服务器地址:SMTP.foxmail.com(端口:25)

china.com:
POP3服务器地址:pop.china.com(端口:110)
SMTP服务器地址:smtp.china.com(端口:25)

tom.com:
POP3服务器地址:pop.tom.com(端口:110)
SMTP服务器地址:smtp.tom.com(端口:25)

etang.com:
POP3服务器地址:pop.etang.com
SMTP服务器地址:smtp.etang.com

具体参考:https://blog.csdn.net/smok56888/article/details/50070453#

原文地址:https://www.cnblogs.com/masha2017/p/11122879.html

时间: 2024-10-01 07:39:40

通过java给qq邮箱发送信息的相关文章

QQ邮箱发送信息

#以下库为python自带的库,不需要进行安装 #邮件发信动作 import smtplib #构造邮件内容 from email.mime.text import MIMEText #构造邮件头 from email.header import Header #发信方:发信邮箱 和授权码 #发信邮箱 from_addr="54****[email protected]" #授权码 password="q*******dba" #收信方:收信邮箱 to_addr=&

java实现qq邮箱激活注册功能

1先去qq邮箱设置中开启 POP3和STMP 服务, 记住授权码 然后编写代码 package cn.yunhe.utils; import javax.mail.*; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import java.util.Properties; /** * 邮件发送工具类 * Created by Administrator on 2017/8/4

java实现qq邮箱每天定时发送邮件

本周四的时候去学校的某机构值班,主要工作是帮老师送文件,干一些杂活.那天没有什么活儿,于是想起用Java实现发送邮件和接收邮件的功能.前几天接触过一点quartz框架,用来实现定时开始任务的功能.于是,这里把他们结合起来了,实现定时发送邮件,向暗恋的女神表白的用处(yiyin). 我没有研究过quartz框架,这里主要是从实用的角度讲一下.在使用时,需要编写任务类和触发器类两部分的代码.任务类是你想实现的功能部分,需要实现Job接口.触发器类设置任务的定时执行时间. 在java实现email中,

javaMail操作QQ邮箱发送邮箱 Demo

最近用到想给项目中加一个功能,就是当项目中某些模块发生异常,在捕获异常后不仅仅写日志抛异常等!还要追加一个发送邮件给该模块的负责人,方便运维定位问题: maven管理的配置: <!-- 邮件 --> <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </depe

JAVA 使用qq邮箱发送邮件

引入一个架包: 代码如下: private static final String QQ_EMAIL_HOST="smtp.qq.com";//qq SMTP服务器 地址 private static final String QQ_EMAIL_PORT="587";//qq SMTP服务器 端口(465这个端口有问题) private static final String QQ_EMAIL_FROM="[email protected]";/

如何通过js给QQ好友发送信息

一般我们在做页面活动的时候可能会碰到点击一个按钮把一些相关的信息通过QQ发送给你的好友,这种信息推送的功能该如何实现呢!下面我来介绍下使用方法! 代码如下: <!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"/> <title>xxx</title> </head> <body> <a h

qq邮箱发送

454 Authentication failed, please open smtp flag first!用QQ邮箱测试报错 我用QQ邮箱测试javamail发送邮件的功能,用户名密码设置正确,却总是发不出邮件. 开启下QQ邮箱的smtp服务器设置即可.

163及qq邮箱发送

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Net; using System.Net.Mail; using System.Text; using System.Text.RegularExpressions

使用qq邮箱发送html格式的邮件

import smtplib   from email.mime.text import MIMEText   mailto_list=["[email protected]","[email protected]"]  mail_host="smtp.qq.com"  #设置服务器 mail_user="[email protected]"   #用户名 mail_pass="xxx"   #密码