使用spring mail发送html邮件的示例代码

发布时间 - 2026-01-11 03:14:20    点击率:


本文展示一下如何使用spring mail来发送html邮件。

maven

    <!-- email -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-mail</artifactId>
    </dependency>

发送图片

public void send(String from, String[] toMails, String subject, String text,
           Map<String,Object> inlines) throws Exception{
    MimeMessage mimeMessage = mailSender.createMimeMessage();
    MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
    helper.setFrom(from);
    helper.setTo(toMails);
    helper.setSubject(subject);
    helper.setText(text, true); //支持html

    // 增加inline
    if(inlines != null){
      for(Map.Entry<String,Object> entry: inlines.entrySet()){
        if(entry.getValue() instanceof ClassPathResource){
          helper.addInline(entry.getKey(), (Resource) entry.getValue());
        }

      }
    }

    mailSender.send(mimeMessage);
  }

测试

发送实例

    ClassPathResource classPathResource = new ClassPathResource("image_2.png");
    Map<String,Object> att = new HashMap<>();
    att.put("image",classPathResource);
    String content = "<html>
              <body>
                <h4>spring mail发送实例</h4>
                <img src='cid:image'/><br>
              </body>
             </html>";
    try{
      mailService.send(new String[]{"xxxxx@163.com"},"spring mail发送实例",content,att);
    }catch (Exception e){
      e.printStackTrace();
    }

异常

org.springframework.mail.MailSendException: Failed messages: com.sun.mail.smtp.SMTPSendFailedException: 554 DT:SPM 126 smtp7,DsmowAB3U6X1_LdZjIz+Aw--.26008S3 1505230070,please see http://mail.163.com/help/help_spam_16.htm?ip=123.65.107.103&hostid=smtp7&time=1505230070
; message exception details (1) are:
Failed message 1:
com.sun.mail.smtp.SMTPSendFailedException: 554 DT:SPM 126 smtp7,DsmowAB3U6X1_LdZjIz+Aw--.26008S3 1505230070,please see http://mail.163.com/help/help_spam_16.htm?ip=123.65.107.103&hostid=smtp7&time=1505230070

  at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:2267)
  at com.sun.mail.smtp.SMTPTransport.finishData(SMTPTransport.java:2045)
  at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:1260)
  at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:448)
  at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:345)
  at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:340)

错误码554

554 DT:SPM 发送的邮件内容包含了未被许可的信息,或被系统识别为垃圾邮件。请检查是否有用户发送病毒或者垃圾邮件;

被网易邮箱识别为垃圾邮件了,有个歪招,就是把发送邮箱添加到cc里头

helper.setCc(from);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# spring  # mail发送html邮件  # mail  # 发送html  # html  # 使用spring实现邮件的发送实例(含测试  # 源码  # 注释)  # Java使用Spring发送邮件的实现代码  # Spring Boot中利用JavaMailSender发送邮件的方法示例(附源码)  # spring mail借助qq邮箱服务器发送邮件  # Java的Spring框架中实现发送邮件功能的核心代码示例  # 垃圾邮件  # 有个  # 网易  # 如何使用  # 用户发送  # 未被  # 大家多多  # 请检查  # 包含了  # 错误码  # true  # helper  # MimeMessageHelper  # setFrom  # setSubject  # setText  # setTo  # Exception  # throws  # inlines 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在阿里云部署织梦网站?  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  Laravel distinct去重查询_Laravel Eloquent去重方法  油猴 教程,油猴搜脚本为什么会网页无法显示?  香港服务器建站指南:免备案优势与SEO优化技巧全解析  Laravel如何实现模型的全局作用域?(Global Scope示例)  网易LOFTER官网链接 老福特网页版登录地址  如何在万网利用已有域名快速建站?  linux top下的 minerd 木马清除方法  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  免费视频制作网站,更新又快又好的免费电影网站?  如何注册花生壳免费域名并搭建个人网站?  Laravel Session怎么存储_Laravel Session驱动配置详解  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  jQuery validate插件功能与用法详解  Laravel如何与Inertia.js和Vue/React构建现代单页应用  如何用wdcp快速搭建高效网站?  HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】  Java遍历集合的三种方式  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  企业网站制作这些问题要关注  Python文本处理实践_日志清洗解析【指导】  如何快速重置建站主机并恢复默认配置?  如何在阿里云完成域名注册与建站?  原生JS获取元素集合的子元素宽度实例  如何在不使用负向后查找的情况下匹配特定条件前的换行符  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道  高防服务器租用首荐平台,企业级优惠套餐快速部署  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  如何彻底删除建站之星生成的Banner?  Python并发异常传播_错误处理解析【教程】  如何获取PHP WAP自助建站系统源码?  Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  详解vue.js组件化开发实践  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  如何在云主机快速搭建网站站点?  b2c电商网站制作流程,b2c水平综合的电商平台?  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  如何在万网主机上快速搭建网站?  再谈Python中的字符串与字符编码(推荐)  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  Android实现代码画虚线边框背景效果  网站制作价目表怎么做,珍爱网婚介费用多少?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)