文档章节

使用 JavaMailSenderImpl SSL 465 发送邮件

淡漠Vip
 淡漠Vip
发布于 2017/09/11 19:15
字数 276
阅读 182
收藏 0
package org.apache.log4j;

import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSenderImpl;

import java.util.Properties;

/***
 * @Author 淡漠Vip
 *
 * @Email itdreamlmc@163.com
 *
 * @Date Create in 17:29 2017/9/11 0011
 */
public class EmailUtils {

    private static JavaMailSenderImpl javaMailSender;

    private static final String userName = "xxxxxxxxxxx";

    private static final String password = "xxxxxxxxxxx";

    private static final String host = "smtp.exmail.qq.com";

    private static final int port = 465;

    //定义收件人列表
    private static final String[] revicedUserName = {"xxxxx", "xxxx@qq.com"};

    private static final Logger logger = Logger.getLogger(EmailUtils.class);

    static {
        javaMailSender = new JavaMailSenderImpl();
        javaMailSender.setHost(host);//链接服务器
        javaMailSender.setPort(port);
        javaMailSender.setUsername(userName);//账号
        javaMailSender.setPassword(password);//密码
        javaMailSender.setDefaultEncoding("UTF-8");

        Properties properties = new Properties();
        properties.setProperty("mail.smtp.auth", "true");//开启认证
        properties.setProperty("mail.debug", "true");//启用调试
        properties.setProperty("mail.smtp.timeout", "1000");//设置链接超时
        properties.setProperty("mail.smtp.port", Integer.toString(port));//设置端口
        properties.setProperty("mail.smtp.socketFactory.port", Integer.toString(port));//设置ssl端口
        properties.setProperty("mail.smtp.socketFactory.fallback", "false");
        properties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
        javaMailSender.setJavaMailProperties(properties);
    }

    /***
     * 发送项目异常 代码提醒
     * @param msg
     */
    public static void sendEmail(String msg) {
        //开启线程异步发送  防止发送请求时间过长
        new Thread(new Runnable() {
            @Override
            public void run() {
                if (revicedUserName != null && revicedUserName.length > 0) {
                    logger.info("===================开始发送异常提醒邮件================");
                    SimpleMailMessage mailMessage = new SimpleMailMessage();
                    mailMessage.setFrom(userName);
                    mailMessage.setSubject("====后台管理项目异常====");
                    mailMessage.setText(msg);
                    mailMessage.setTo(revicedUserName);
                    //发送邮件
                    javaMailSender.send(mailMessage);
                    logger.info("==================结束发送异常提醒邮件================");
                }
            }
        }).start();
    }


    public static void main(String[] args) {
        sendEmail("代码开始抽风报警了------");
    }
}

 

© 著作权归作者所有

共有 人打赏支持
淡漠Vip
粉丝 0
博文 8
码字总数 3145
作品 0
程序员
私信 提问
阿里云smtp邮件服务引发的血案

前言 今天开发伙伴找我修改邮件服务smtp发现网站用邮箱找回密码失败了!于是我开始了简单得操作! 首先我扫描一下! 发现25端口没有连接服务。 看一下报错! 之后telnet一下 telnet smtp.16...

李伟铭k
07/09
0
0
1 分钟教会你用 Spring Boot 发邮件

Spring Boot 提供了一个发送邮件的简单抽象,使用的是下面这个接口。 org.springframework.mail.javamail.JavaMailSender Spring Boot 提供了一个 ,并能自动配置,下面来做个小例子,顺便解...

Java技术栈
10/30
0
0
javamail使用SSL加密方式465端口

目前使用javamail发送邮件一般使用25端口,由于25端口是一个简单的邮件发送协议,所以经常会被滥用发送垃圾邮件,因此在一些服务器比如阿里云上会封禁该端口的使用. 解决的办法就是使用465端口:...

竹竿先生
2016/12/13
976
1
Python 发送 email 的三种方式

Python发送email的三种方式,分别为使用登录邮件服务器、使用smtp服务、调用sendmail命令来发送三种方法 本文原文自米扑博客:Python 发送 email 的三种方式 Python发送email比较简单,可以通...

sunboy2050
10/18
0
0
使用 JavaMail 实现邮件发送与收取

已使用 163 邮箱测试通过,且支持 SSL 连接。 发送邮件 示例:Jack 发送一封邮件给 Rose。 public class SendMail { public static void main(String[] args) { boolean isSSL = true; Strin...

黄勇
2013/11/24
13.4K
6

没有更多内容

加载失败,请刷新页面

加载更多

Docker的架构与自制镜像的发布

一. docker 是什么 大家都知道虚拟机吧,windows 上装个 linux 虚拟机是大部分程序员的常用方案。公司生产环境大多也是虚拟机,虚拟机将物理硬件资源虚拟化,按需分配和使用,虚拟机使用起来...

程序猿拿Q
11分钟前
0
0
ubuntu下pycharm调用Hanlp实践分享

前几天看了大快的举办的大数据论坛峰会的现场直播,惊喜的是hanlp2.0版本发布。Hanlp2.0版本将会支持任意多的语种,感觉还是挺好的!不过更多关于hanlp2.0的信息,可能还需要过一段时间才能看...

左手的倒影
20分钟前
1
0
Python监控服务器实现邮件微信报警[未测试]

本文中笔者暂时实现的只有cpu和内存的监控,python可以监控许多的主机信息,网络,硬盘,机器状态等,以下是代码的实现,代码可以实现windows和linux的监控。 实验环境:Ubuntu16.04和windo...

dragon_tech
25分钟前
1
0
Spring Boot 返回 JSON 数据,一分钟搞定!

在 WEB 项目中返回 JSON 数据是常见的交互形式,在 Spring Boot 中这一切都变得十分简单。So easy!!! 你所需具备的基础 什么是 Spring Boot? Spring Boot 核心配置文件详解 Spring Boot 开启...

Java技术栈
31分钟前
2
0
保护Hadoop集群三大方法

大约在两年前,开源数据库解决方案MongoDB以及Hadoop曾遭受过大量恶意攻击,这些攻击后被统称为“勒索软件”,因为其攻击者会擦除或加密数据,然后向被攻击者索要资金以恢复数据。自今年以来...

linuxCool
37分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部