Spring Boot中发送邮件时,如何让发件人显示别名
共 2843字,需浏览 6分钟
·
2023-10-15 20:41
之前,我们通过一系列文章,介绍了如何在Spring Boot中发送邮件:
-
发送邮件[1] -
添加附件[2] -
引用静态资源[3] -
邮件模版[4]
已经包含了大部分的应用场景。但最近DD在做YouTube中文配音[5]的时候,碰到一个问题:
如上图所示,收件人在客户端收到的时候,显示的名称是邮箱的前缀(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
的时候,像上面这样写就可以了。
今日分享就到这里,感谢阅读!如果您学习过程中如遇困难?可以加入我们超高质量的Spring技术交流群[6],参与交流与讨论,更好的学习与进步!更多Spring Boot教程可以点击直达![7],欢迎收藏与转发支持!
参考资料
发送邮件: 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/),一键外语转中文,英语不好的小伙伴也可以轻松的学习油管上的优质教程了,下面是演示视频,可以直观的感受一下:
推荐阅读
点击卡片关注我,分享一线前沿干货