Spring-Mail

  • 基本了解
    • 发送纯文本邮件
    • 发送HTML邮件
    • 发送内嵌资源的邮件
    • 发送带附件的邮件

基本了解

spring为发送邮件提供了一个抽象层: 定义了MailMessage 和 MailSender抽象 来描述邮件消息和邮件发送者# 消息
MailMessage: 有两个实现类: SimpleMainMessage(text格式) 和 MimeMailMessage(多用途)
setTo(String to) 发送地址,可以设置多个
setFrom(String from) 发送方
setCc(String c) 抄送
SetSubject(String subject) 主题
setText(String text) 邮件内容MimeMessageHelper: 简化对mimeMessage的封装# 发送
JavaMailSender抽象类:
最常用的方法: send(message)可以创建MimeMessage:
createMimeMessage()JavaMailSenderImpl: 常用的属性:
host:
port:
protocol: 默认STMP
username: 用户名
password:
defaultEncoding: 编码

发送纯文本邮件

        <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>
    public static void main(String[] args) {JavaMailSenderImpl sender = new JavaMailSenderImpl();sender.setHost("smtphz.qiye.163.com");//sender.setPort(994);sender.setUsername("ops@mxx.com");sender.setPassword("xxxx");sender.setDefaultEncoding("UTF-8");SimpleMailMessage message = new SimpleMailMessage();message.setFrom("oxx@mxx.com");message.setTo("x2@163.com","xx@163.com");message.setSubject("验证码发送");message.setText("984536");// 抄送message.setCc("xxx@xx.com");// 发送邮件sender.send(message);}

发送HTML邮件

    public static void main(String[] args) throws MessagingException {JavaMailSenderImpl sender = new JavaMailSenderImpl();sender.setHost("smtphz.qiye.163.com");//sender.setPort(994);sender.setUsername("ops@cc.com");sender.setPassword("xxx");sender.setDefaultEncoding("UTF-8");MimeMessage message = sender.createMimeMessage();// 简化对mimeMessage的封装MimeMessageHelper helper = new MimeMessageHelper(message, false, "UTF-8");helper.setFrom("ops@mfdfgd.com");helper.setCc("dff@mfdf.com");helper.setTo(new String[]{"fdf@163.com", "fdfer@163.com"});helper.setSubject("HTML邮件");helper.setText("<h1>hello,world!</h1>",true);sender.send(message);}

发送内嵌资源的邮件

    public static void main(String[] args) throws MessagingException {JavaMailSenderImpl sender = new JavaMailSenderImpl();sender.setHost("smtphz.qiye.163.com");//sender.setPort(994);sender.setUsername("ops@dfg.com");sender.setPassword("ddx");sender.setDefaultEncoding("UTF-8");MimeMessage message = sender.createMimeMessage();// 简化对mimeMessage的封装 内嵌资源要将multipart设置为trueMimeMessageHelper helper = new MimeMessageHelper(message, true, "UTF-8");helper.setFrom("ops@meifute.com");helper.setCc("ddd@dddd.com");helper.setTo(new String[]{"dd@163.com", "ddd@163.com"});helper.setSubject("HTML邮件");// 内嵌文件的id已特定的标志引用 格式为cid:<内嵌文件id>helper.setText("<html><body>hello<img src='cid:id1'/><body></html>",true);FileSystemResource resource = new FileSystemResource("/Users/jinxingguang/java_project/spring-boot-all/spring-boot-mail-demo/src/main/resources/tiger.jpeg");// 使用addInline 方法将文件内嵌到邮件中helper.addInline("id1",resource);sender.send(message);}

发送带附件的邮件

    // 带附件邮件public static void main(String[] args) throws MessagingException {JavaMailSenderImpl sender = new JavaMailSenderImpl();sender.setHost("smtphz.qiye.163.com");//sender.setPort(994);sender.setUsername("ops@ddf.com");sender.setPassword("ddd");sender.setDefaultEncoding("UTF-8");MimeMessage message = sender.createMimeMessage();// 简化对mimeMessage的封装 要将multipart设置为trueMimeMessageHelper helper = new MimeMessageHelper(message, true, "UTF-8");helper.setFrom("ga@gg.com");helper.setCc("ddd@fgg.com");helper.setTo(new String[]{"ddd@163.com", "gsfgh@163.com"});helper.setSubject("HTML邮件");// 内嵌文件的id已特定的标志引用 格式为cid:<内嵌文件id>helper.setText("<html><body>hello<body></html>",true);FileSystemResource resource = new FileSystemResource("/Users/jinxingguang/java_project/spring-boot-all/spring-boot-mail-demo/src/main/resources/tiger.jpeg");// 使用addAttachment 方法 添加附件helper.addAttachment("tiger.jpeg",resource);sender.send(message);}

Spring-Mail相关推荐

  1. 使用spring mail发送html邮件

    为什么80%的码农都做不了架构师?>>>    序 本文展示一下如何使用spring mail来发送html邮件. maven <!-- email --><dep ...

  2. spring mail 发送邮件

    最近在项目中用到了发送邮件的功能(用户注册邮箱激活.用户密码重置邮箱获取验证码等等),所以写了一下java的邮件发送. java mail java mail是最早出现的java邮件发送,以下是它的使 ...

  3. spring mail 发送html simple,SpringBoot整合Mail邮件发送

    Spring提供了非常好用的JavaMailSender接口实现邮件发送.在Spring Boot的Starter模块中也为此提供了自动化配置. 添加依赖 org.springframework.bo ...

  4. xxl-job配置发邮件 spring.mail的QQ邮箱配置

    邮件服务器配置 ### xxl-job, email spring.mail.host=smtp.qq.com spring.mail.port=465 spring.mail.username=xx ...

  5. 诡异的 spring mail 发送邮件问题

    项目中有个消息系统,通过 RabbitMQ 发送系统中的邮件时,采用5个固定线程池去发送邮件.发现虽然有消费,但是日志中却没有任何输出相关的成功或失败或抛出异常的信息. 伪代码如下,消费者主线程使用固 ...

  6. 了解JavaMail能够使用Spring Mail API发送电子邮件

    标题 简介 javaAPI 写java代码 Tomcat来运行或者先编写个Test测试类 测试 MailService MailServiceImpl UserService UserServerIm ...

  7. Spring mail 邮件服务及其参数配置(properties文件的读写)

    一个Web 系统通常会少不了邮件服务的,比如用于注册,密码找回,订单提醒等应用场景.Spring 封装了一个简单易用的关于邮件发送的工具类JavaMailSenderImpl . 系统要提供邮件服务, ...

  8. java邮件支持_使用Spring的JAVA Mail支持简化邮件发送功能

    闲来无事,翻看<Spring in Action>,发现Spring集成了对JAVA Mail的支持,有点小激动的看了一遍,嗯,话说真的简单了很多. Spring的邮件发送的核心是Mail ...

  9. spring boot整合mail

    1.添加依赖 </dependency><dependency><groupId>org.springframework.boot</groupId>& ...

  10. Spring Boot 发送邮件时,出现 Mail server connection failed 异常问题

    问题描述:在使用 SpringBoot 的邮件发送组件功能,发送邮件时,本地环境能够发送成功,但部署到 腾讯云服务器后,却发送失败,报错 org.springframework.mail.MailSe ...

最新文章

  1. RESTful Android
  2. 访华为5G首席科学家童文:针尖战略引领5G突破
  3. 一道有意思的css面试题,9宫格
  4. jQuery-选择器(2)
  5. POJ1679 Luogu4180 次小生成树
  6. iview选择月份 月初月末 时间戳格式
  7. 已启用 https://chai2010.cn, 欢迎访问!
  8. 解决This picacion faied to trt becuse t could, not find or load the Qt platform plugin “windows““问题
  9. linux fork函数的精辟解说
  10. TCP/IP详解卷1中文版勘误表前言
  11. 彻底理解AMD和CMD
  12. 剑指offer(C++)-JZ79:判断是不是平衡二叉树(数据结构-树)
  13. 书评-YDKJSthis与对象原型
  14. PLSQL导入SQL文件
  15. 【燃烧吧 切割机】 自制微型激光切割
  16. NOIP模拟赛 czy的后宫4
  17. 兜兜转转~~,忘不了的break!! 忘不了的continue!!!!
  18. EISeg——应用于语义分割的自动标注软件
  19. 如何去掉“Picked up JAVA_TOOL_OPTIONS: -Djava.vendor=“Sun Microsystems Inc.“” 提示
  20. 从第三季“多多读书月”看拼多多的知识普惠进阶

热门文章

  1. 变革时代 互联网电视全球布局的正确姿势
  2. 安卓强制恢复出厂_手机恢复出厂设置到底有什么用?是不是恢复之后就和新机一样了?...
  3. netflix怎么上_如何在使用它的每台设备上注销Netflix帐户
  4. Flutter 强制横屏竖屏设置
  5. 获取数组中的某段数组元素
  6. SyntaxError: Non-ASCII character ‘\xe5‘ in file
  7. catia圆角交点如何标注_4.4.3.3-Catia操作之倒圆角命令
  8. NAACL 2022 | DOP-Tuning: 面向对话摘要领域自适应的轻量级微调方法
  9. 阿里云企业实名认证方法 新手看完就会了
  10. displaytag标签相关知识(多篇文章)