spring-boot 速成(10) -【个人邮箱/企业邮箱】发送邮件

发邮件是一个很常见的功能,代码本身并不复杂,有坑的地方主要在于各家邮件厂家的设置,下面以qq个人邮箱以及腾讯企业邮箱为例,讲解如何用spring-boot发送邮件:

一、添加依赖项

compile ‘org.springframework.boot:spring-boot-starter-mail‘

二、application.yml配置

2.1 QQ个人邮箱

spring:
  application:
    name: mail-demo
  mail:
    host: smtp.qq.com
    username: [email protected] # 这里填写个人的qq邮箱
    password: ***** # 注:这里不是qq邮箱的密码,而是授权码
    properties:
      mail.smtp.auth: true
      mail.smtp.starttls.enable: true
      mail.smtp.starttls.required: true

生成授权码的方法参考下图:

2.3 QQ企业邮箱

spring:
  application:
    name: mail-demo
  mail:
    host: smtp.exmail.qq.com
    username: [email protected] # 这里填写企业邮箱
    password: **************** # 这里填写企业邮箱登录密码
    properties:
      mail.smtp.auth: true
      mail.smtp.socketFactory.class: javax.net.ssl.SSLSocketFactory
      mail.smtp.socketFactory.fallback: false
      mail.smtp.socketFactory.port: 465  

企业邮箱就不需要授权码了,直接填写登录密码即可。

三、 发送代码示例

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.data.redis.RedisRepositoriesAutoConfiguration;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.mail.javamail.JavaMailSender;

/**
 * Created by 菩提树下的杨过 on 12/08/2017.
 */
@SpringBootApplication
public class MailDemo {

    public static void main(String[] args) {

        ConfigurableApplicationContext context = SpringApplication.run(MailDemo.class, args);
        JavaMailSender mailSender = context.getBean(JavaMailSender.class);

        SimpleMailMessage message = new SimpleMailMessage();
        message.setFrom("菩提树下的杨过<[email protected]>"); //注意这里的发送人邮箱,要与yml配置中的username相同,否则验证不通过

        message.setTo("[email protected]");
        String[] ccList = new String[]{"[email protected]", "[email protected]"};//这里添加抄送人名称列表
        message.setCc(ccList);
        String[] bccList = new String[]{"yy[email protected]", "[email protected]"};//这里添加密送人名称列表
        message.setBcc(bccList);
        message.setSubject("主题:简单邮件(QQ个人邮件)-抄送,密送测试");
        message.setText("测试邮件内容");
        mailSender.send(message);
        System.out.println("发送成功!");
    }
}
时间: 2024-07-30 22:47:04

spring-boot 速成(10) -【个人邮箱/企业邮箱】发送邮件的相关文章

Spring Boot 的 10 个核心模块

学习 Spring Boot 必须得了解它的核心模块,和 Spring 框架一样,Spring Boot 也是一个庞大的项目,也是由许多核心子模块组成的. Spring Boot 的核心模块下面我们大概来了解一下 Spring Boot 的核心模块. 1.spring-boot 这是 Spring Boot 的主模块,也是支持其他模块的核心模块,主要包含以下几点: 1) 提供了一个启动 Spring 应用的主类,并提供了一个相当方便的静态方法,它的主要是作用是负责创建和刷新 Spring 容器的

Spring Boot 中 10 行代码构建 RESTful 风格应用

RESTful ,到现在相信已经没人不知道这个东西了吧!关于 RESTful 的概念,我这里就不做过多介绍了,传统的 Struts 对 RESTful 支持不够友好 ,但是 SpringMVC 对于 RESTful 提供了很好的支持,常见的相关注解有: @RestController @GetMapping @PutMapping @PostMapping @DeleteMapping @ResponseBody ... 这些注解都是和 RESTful 相关的,在移动互联网中,RESTful 得

spring boot 学习10 定义springboot的两种方法

使用spring boot的两种方法: A:继承spring-boot-starter-parent项目 这种方式很简单,只需要在POM里面添加parent父工程即可. B: 如果你不喜欢继承spring-boot-starter-parent POM的方式,需要使用公司的标准parent(而parent只能有一个), 或者比较倾向显示声明所有Maven配置.你可以使用一个scope=import导入的方式使用Spring Boot <dependencyManagement> <dep

Spring Boot教程10——多线程

Spring通过任务执行器(TaskExecutor)来实现多线程和并发编程.使用ThreadPoolTaskExecutor可实现一个基于线程池的TaskExcutor.而实际开发中任务一般是非阻碍的,即异步的,所以我们要在配置类中通过@EnableAsync开启对异步任务的支持,并通过在实际执行的Bean的方法中通过使用@Async注解来声明其是一个异步任务. 示例 1>.配置类 package com.wisely.highlight_spring4.ch3.taskexecutor; i

Spring Cloud + Spring Boot + Mybatis + shiro + 微服务 企业分布式微服务云架构技术分享

1.   介绍 Commonservice-system是一个大型分布式.微服务.面向企业的JavaEE体系快速研发平台,基于模块化.服务化.原子化.热插拔的设计思想,使用成熟领先的无商业限制的主流开源技术构建.采用服务化的组件开发模式,可实现复杂的业务功能.提供驱动式开发模式,整合内置的代码生成器,将JavaEE开发效率提高5倍以上,减少50%的代码开发量,解决80%的重复工作,让开发者更关注业务逻辑.使用Maven进行项目的构建管理,采用Jenkins进行持续集成,主要定位于大型分布式企业系

Java实现网易企业邮箱发送邮件

最近项目需要用网易企业邮箱发送邮件,特意来将实现过程记录一下: maven导入jar包 1 <!-- javax.mai 核心包 --> 2 <dependency> 3 <groupId>javax.activation</groupId> 4 <artifactId>activation</artifactId> 5 <version>1.1</version> 6 </dependency>

企业邮箱那个管理更方便

报告指出,中小企业IT部门对邮件服务的选择正在缓慢发生变化,他们越来越青睐企业邮箱的重要原因是:企业邮箱可以减轻IT部门的压力.IT部门,需要把所有的IT资源进行集中实施,以及统一管理和整合.面对繁重的工作,IT管理人员更希望选购好用又方便管理的IT资源. 中国电信企业邮箱正是基于易用简单.维护轻松.管理方便的原则研发的,主要从三个方面协助IT人员统筹管理企业邮箱: 一.组织分级管理 为帮助IT人员做好各层级的管理,中国电信企业邮箱企业邮箱特别提供“系统-组织-部门-子部门-用户”结构的管理模式

什么是企业邮箱?

企业邮箱 企业邮箱(Enterprise Mailbox)是指以您的域名作为后缀的电子邮件地址.通常一个企业经常有多个员工要使用电子邮件,企业电子邮局可以让集团邮局管理员任意开设不同名字的邮箱,并根据不同的需求设定邮箱的空间,而且可以随时关闭或者删除这些邮箱. 1. 按照企业自有域名开通的邮箱:[email protected]企业域名. 功能更多,空间容量更大,大大提高企业邮箱的稳定高效性,反垃圾反病毒性能更强,邮件收发速度更快. 拥有企业邮箱可以为自己的员工设置电子邮箱,还可以根据需要设置不

企业邮箱怎么弄分析

企业邮箱是以企业自己的域名为后缀的信箱,例如:name@企业域名. 拥有企业邮箱可以为自己的员工设置电子邮箱,还可以根据需要设置不同的管理权限,企业邮箱的 部门成员之间或者公司全体员工之间的群发功能等等.哪些企业需要购买企业邮箱 企业邮箱作为企业内部办公以及同客户沟通的重要工具,在日常的企业经营管理和商务活动中发挥着越来越重要的作用,因此,无论大中小企业都需要企业邮箱这一沟通工具.为什么要使用企业邮箱?1相比个人邮和免费邮箱,企业邮箱拥有独立的域名,可大大提升企业形象:拥有独立的管理后台,便于企