Spring Boot中发送邮件时,如何让发件人显示别名
  lnZqfDbuKjjk 2023年11月02日 52 0


之前,我们通过一系列文章,介绍了如何在Spring Boot中发送邮件:

  • 发送邮件[1]
  • 添加附件[2]
  • 引用静态资源[3]
  • 邮件模版[4]

已经包含了大部分的应用场景。但最近DD在做YouTube中文配音[5]的时候,碰到一个问题:



Spring Boot中发送邮件时,如何让发件人显示别名_java

如上图所示,收件人在客户端收到的时候,显示的名称是邮箱的前缀(no-reply),而不是我们的产品名称(也就是邮箱别名:YouTube中文配音)。

开始一直在Mail的配置类里寻找相关配置项,结果就下面这些内容:

public class MailProperties {

 private static final Charset DEFAULT_CHARSET = StandardCharsets.UTF_8;

 /**
  * SMTP server host. For instance, 'smtp.example.com'.
  */
 private String host;

 /**
  * SMTP server port.
  */
 private Integer port;

 /**
  * Login user of the SMTP server.
  */
 private String username;

 /**
  * Login password of the SMTP server.
  */
 private String password;

 /**
  * Protocol used by the SMTP server.
  */
 private String protocol = "smtp";

 /**
  * Default MimeMessage encoding.
  */
 private Charset defaultEncoding = DEFAULT_CHARSET;

可以看到,并没有关于别名的配置项。那么如何设置发件人的别名呢?

最后才发现,原来是在定义发送内容的时候设置的,具体看看下面这个例子:

SimpleMailMessage message = new SimpleMailMessage();
message.setFrom("程序猿DD<xxx@didispace.com>");  // 发件人的别名设置
message.setTo("xxxx@qq.com");
message.setSubject("主题:简单邮件");
message.setText("测试邮件内容");

mailSender.send(message);

如果你是组织比较复杂的邮件,使用MimeMessage的话也是一样。在setFrom的时候,像上面这样写就可以了。


参考资料

[1]

发送邮件: https://www.didispace.com/spring-boot-2/11-1.html


[2]

添加附件: https://www.didispace.com/spring-boot-2/11-2.html


[3]

引用静态资源: https://www.didispace.com/spring-boot-2/11-3.html


[4]

邮件模版: https://www.didispace.com/spring-boot-2/11-4.html


[5]

YouTube中文配音: https://youtube-dubbing.com/


[6]

Spring技术交流群: https://www.didispace.com/jiaqun.html


[7]

Spring Boot教程可以点击直达!: https://www.didispace.com/spring-boot-2/

最后给大家推荐下我们自研的Youtube视频语音转换插件(https://youtube-dubbing.com/),一键外语转中文,英语不好的小伙伴也可以轻松的学习上的优质教程了,下面是演示视频,可以直观的感受一下:


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
lnZqfDbuKjjk