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]";//qq 发件人邮箱
    private static final String QQ_EMAIL_PASSWORD_CODE="xxxxxxxxxxxxxxx";//qq 16位的 授权码

    public static  void sendQQEmail(String to_address, String title, String content) throws UnsupportedEncodingException, MessagingException {
        // 创建Properties 类用于记录邮箱的一些属性
        Properties props = new Properties();
        // 表示SMTP发送邮件,必须进行身份验证
        props.put("mail.smtp.auth", "true");
        //此处填写SMTP服务器
        props.put("mail.smtp.host",QQ_EMAIL_HOST);
        //端口号,QQ邮箱给出了两个端口,465这个端口用的有问题,用这个587
        props.put("mail.smtp.port", QQ_EMAIL_PORT);
        // 此处填写你的发件人账号
        props.put("mail.user", QQ_EMAIL_FROM);
        // 此处的密码就是前面说的16位STMP口令(授权码)
        props.put("mail.password", QQ_EMAIL_PASSWORD_CODE);
        // 构建授权信息,用于进行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);
        // 设置收件人的邮箱:收件人的邮箱不限于qq邮箱,也可以是163邮箱……
        InternetAddress to = new InternetAddress(to_address);
        message.setRecipient(Message.RecipientType.TO, to);
        // 设置邮件标题
        message.setSubject(title);
        // 设置邮件的内容体
        message.setContent(content, "text/html;charset=UTF-8");
        // 最后当然就是发送邮件啦
        Transport.send(message);
    }
时间: 2024-10-04 12:07:10

JAVA 使用qq邮箱发送邮件的相关文章

基于java mail实现简单的QQ邮箱发送邮件

刚学习到java邮件相关的知识,先写下这篇博客,方便以后翻阅学习. -----------------------------第一步 开启SMTP服务 在 QQ 邮箱里的 设置->账户里开启 SMTP 服务 完成验证 获取授权码(后面代码实现时使用) -----------------------------第二步 环境配置 即下载第三方库 https://github.com/javaee/javamail/releases -----------------------------第三步 代

杂项之使用qq邮箱发送邮件

杂项之使用qq邮箱发送邮件 本节内容 特殊设置 测试代码 1. 特殊设置 之前QQ邮箱直接可以通过smtp协议发送邮件,不需要进行一些特殊的设置,但是最近使用QQ邮箱测试的时候发现以前使用的办法无法奏效了...于是上网查了查,QQ对这方面做了一些限制,必须使用授权码才能登陆邮箱.官方链接在这:http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256按照上面的官方文档配置好之后就可以使用QQ邮箱发

qq邮箱发送邮件封装

使用qq发送邮件 # coding=utf8 """ qq邮箱发送邮件 """ import sys reload(sys) sys.setdefaultencoding('utf8') import smtplib from email.mime.text import MIMEText class QQMailClient(): """使用qq邮箱发送邮件""" def __init

SpringBoot使用qq邮箱发送邮件

最近公司要做一个邮箱注册和重置密码的功能,因为之前就做过,但是不是Springboot项目,所以相对来说还是比较容易的,在这里记录一下. 一.引用Maven依赖 这里使用spring自带的邮件jar包 <!-- 邮件服务 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId&g

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

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

java基于javaMail实现向QQ邮箱发送邮件

一.首先开启SMTP服务        在 QQ 邮箱里的      设置->账户->开启 SMTP 服务           注意:开启完之后,QQ 邮箱会生成一个授权码,在代码里连接邮箱使用这个授权码而不是原始的邮箱密码,这样可以避免使用明文密码 二.设置spring配置文件 <?xml version="1.0" encoding="UTF-8"?>    <beans xmlns="http://www.springf

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

javamail实现用普通QQ邮箱发送邮件

本人最近在写一个Android项目,用户注册的时候想用邮箱验证的方式,于是就需要在服务器端发送电子邮件给新注册用户,邮件内容中包含一个 链接, 当用户点击这个链接将 登录到服务器 的验证逻辑.本人在网上找了很多代码,可能由于是很久以前的了,各大邮箱的规范 什么的都发生改变,所以总是出现一些问题.庆幸 的是,最后还是实现了. 这是我用大号 发给小号 和另外一个 163 邮箱的 测试邮件 首先,发一个连接,我在困扰了了两天之后,终于得到了这位前辈的解救,我发的代码基本上也都是他的源码,只是有几处关键

关于JavaMail实现QQ邮箱发送邮件的简单实现1

一 确认QQ是否开启了POP3/SMPT协议 1.登陆QQ,打开QQ邮箱,点击"设置" 2.点击"账户",拉到下面"POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务" 3.点击"开启",会看见几种验证方式,选择任意一种觉得方便的方式 4.在验证完之后会得到一个授权码,这个授权码先拷贝下来,等一下会作为系统邮箱的密码,要是授权码忘记了也没有关系,可以再重新生成 二 测试代码 1.在成功开启QQ的P