Spring(非boot)通过ssl发送邮件

参考:https://blog.csdn.net/liguo9860/article/details/6874040

我这里就说一下使用Spring的JavaMailSender如何实现

1. 配置JavaMailSender

    @Bean
    public JavaMailSender javaMailSender(){
        JavaMailSenderImpl javaMailSender = new JavaMailSenderImpl();
        javaMailSender.setDefaultEncoding("UTF-8");
        javaMailSender.setUsername(env.getProperty("email.user"));
        javaMailSender.setPassword(env.getProperty("email.pwd"));
        javaMailSender.setHost(env.getProperty("email.host"));
        Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
        final String SSL_FACTORY = "javax.net.ssl.SSLSocketFactory";
        // Get a Properties object
        Properties props = System.getProperties();
        props.setProperty("mail.smtp.socketFactory.class", SSL_FACTORY);
        props.setProperty("mail.smtp.socketFactory.fallback", "false");
        props.setProperty("mail.smtp.port", "465");
        props.setProperty("mail.smtp.socketFactory.port", "465");
        props.put("mail.smtp.auth", "true");
        javaMailSender.setJavaMailProperties(props);
        return javaMailSender;
    }

2. 发送邮件

String[] receivers = new String[]{"收件人[email protected]", "收件人[email protected]"};
String subject = "测试SSL发送邮件,走465端口";
String content = "<h2>哈哈测试, 原文地址:https://home.cnblogs.com/u/tomcatandjerry/</h2>"
MimeMessagePreparator preparator = new MimeMessagePreparator() {
    public void prepare(MimeMessage mimeMessage) throws Exception {
        MimeMessageHelper message = new MimeMessageHelper(mimeMessage);
        message.setTo(receivers);
        if(data.getBcc() != null){
            message.setBcc(data.getBcc());
        }
        message.setFrom("[email protected]");
        message.setSubject(subject);
        message.setText(content, true);
    }
};
mailSender.send(preparator);

  

 

原文地址:https://www.cnblogs.com/tomcatandjerry/p/10033545.html

时间: 11-28

Spring(非boot)通过ssl发送邮件的相关文章

System.net.mail 腾讯ssl发送邮件超时

我采用了.net 的自带组件 System.Web.Mail.MailMessage发送邮件,主要是在客户注册网站成功的时候发条欢迎邮件,最近邮件无法发送了,看了下腾讯smtp邮件配置,所有的邮件发送都换成ssl了,之前用的是25端口,现在换成了465或587,于是修改代码如下: MailMessage msgMail = new MailMessage("发件箱", "收件箱", "邮件标题", "邮件内容",2); Smt

小菜鸟学习SPRING BOOT -- ssl配置

菜鸟新来,大神勿喷,些许醍醐,感激涕零.因为 我总是装幽默,是因为我想让自己快乐. ssl协议位于tcp/ip协议与各种应用协议之间,为数据通信提供安全支持. ssl协议分为两层: ssl记录协议,它建立在可靠传输协议之上,为高层协议提供数据封装.压缩.加密等基本功能支持. ssl握手协议,它建立在ssl记录协议之上,用于实际数据传输开始前,通信双方进行身份认证.协商加密算法.交换加密密钥等 基于B/S的web应用,是通过https来实现ssl的.https是http的安全版,即在http下加入

Spring集成JavaMail并利用线程池发送邮件

我们系统存在大量发送邮件的需求,项目使用的是Spring框架而JavaMail也能很好的跟Spring进行集成,由于发送邮件最好还是使用异步进行发送,所以这里就采用线程池+JavaMail进行邮件发送,下面看具体代码实现: Step1.引入JavaMail <mail.version>1.4.7</mail.version> <dependency> <groupId>javax.mail</groupId> <artifactId>

Spring Boot教程30——Tomcat配置

本节的配置方法对Tomcat.Jetty和Undertow等内嵌servlet容器都是通用的. 1.Properties配置Tomcat 关于Tomcat的所有属性都在org.springframework.boot.autoconfigure.web.ServerProperties配置类中做了定义,我们只需在application.properties配置属性做配置即可.通用的Servlet容器配置都以“server”作为前缀,而Tomcat特有配置都以“server.tomcat”作为前缀

sql Server 发送邮件 错误类型及原因

设置警报         在[常规项]中做以下设置 新建警报 设置警报名称 选择数据库 选择严重性     在[响应项]中可以做以下设置 选择要邮件通知的操作员 可以设置执行一个警报作业    在选项中可以做以下设置 设置警报错误文本设置方式 选择邮件发送方式 可以自定义要发送的其他内容 配置操作员  在sql代理中的[操作员]邮件新建操作员    在[常规]里面做以下设置 设置姓名 设置电子邮箱地址() 设置电子邮箱地址 设置寻呼值班计划        在[通知]里面设置 勾选上要发送电子邮件

Telnet协议,SSH协议(安全外壳协议),SSL协议(安全套接层协议),HTTPS(Hypertext Transfer Protocol Secure)安全超文本传输协议

2.Telnet协议 Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式.它为用户提供了在本地计算机上完成远程主机工作的能力.在终端使用者的电脑上使用telnet程序(如putty),用它连接到服务器.终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样.可以在本地就能控制服务器.要开始一个telnet会话,必须输入用户名和密码来登录服务器.Telnet是常用的远程控制Web服务器的方法. 3.SS

为何大量网站不能抓取?爬虫突破封禁的6种常见方法

在互联网上进行自动数据采集(抓取)这件事和互联网存在的时间差不多一样长.今天大众好像更倾向于用“网络数据采集”,有时会把网络数据采集程序称为网络机器人(bots).最常用的方法是写一个自动化程序向网络服务器请求数据(通常是用 HTML 表单或其他网页文件),然后对数据进行解析,提取需要的信息. 本文假定读者已经了解如何用代码来抓取一个远程的 URL,并具备表单如何提交及 JavaScript 在浏览器如何运行的机制.想更多了解网络数据采集基础知识,可以参考文后的资料. 在采集网站的时会遇到一些比

Https socket 连接

介: 本文主要介绍了网络安全通讯协议 SSL/TLS 和 Java 中关于安全通讯的实现部分.并通过一个简单的样例程序实现,来展示如何在 Java 平台上正确建立安全通讯. 在人类建立了通信系统之后,如何保证通信的安全始终是一个重要的问题.伴随着现代化通信系统的建立,人们利用数学理论找到了一些行之有效的方法来保证数字 通信的安全.简单来说就是把两方通信的过程进行保密处理,比如对双方通信的内容进行加密,这样就可以有效防止偷听者轻易截获通信的内容.目前 SSL(Secure Sockets Laye

Linux服务器空间爆满如何处理

执行 df -h 查看总磁盘占用情况 2.执行 du -sh /*  查看所有目录的磁盘占用空间情况 由此我们可以看到主要是 /usr 和 /var 这2个目录占用了较大空间 3.执行 du -sh /var/*  查看/var目录下子目录的磁盘占用情况,由此可以看到是 /var/bin 这个子目录占用 了大量磁盘空间 4.执行 du -sh /var/lib/* | sort -r | head -n 10  查看 /var/lib 目录下占用空间较大的10个文件,并按照降序排列 5找到了占用

C#发邮件_EmailHelper

EmailHelper类 public class EmailHelper { /// <summary> /// 发送邮件 /// </summary> /// <param name="smtpServer">smtp服务器</param> /// <param name="port">端口</param> /// <param name="mailFrom">