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

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

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

如上图所示,收件人在客户端收到的时候,显示的名称是邮箱的前缀,而不是我们的产品名称,也就是邮箱别名。

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

java 复制代码
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;

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

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

java 复制代码
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技术交流群,参与交流与讨论,更好的学习与进步!更多Spring Boot教程可以点击直达!,欢迎收藏与转发支持!

欢迎关注我的公众号:程序猿DD。第一时间了解前沿行业消息、分享深度技术干货、获取优质学习资源

相关推荐
Wpa.wk11 分钟前
自动化测试(java) - PO模式了解
java·开发语言·python·测试工具·自动化·po模式
IT 行者22 分钟前
Spring Security 7.0 新特性详解
java·后端·spring
华仔啊28 分钟前
Java 的金额计算用 long 还是 BigDecimal?资深程序员这样选
java·后端
Coder_Boy_32 分钟前
业务导向型技术日志记录(2)
java·人工智能·驱动开发·微服务
凤凰战士芭比Q39 分钟前
Jenkins(环境变量、构建参数、流水线触发、通知报告)
java·servlet·jenkins
运维@小兵1 小时前
Spring AI系列——开发MCP Server和MCP Client(SSE方式)
java·人工智能·spring
有一个好名字1 小时前
设计模式-代理模式
java·设计模式·代理模式
IT 行者1 小时前
Spring Security 7.0 迁移指南
java·数据库·spring
okseekw1 小时前
Java多线程开发实战:解锁线程安全与性能优化的关键技术
java·后端
Java天梯之路1 小时前
Spring Boot 钩子全集实战(三):`EnvironmentPostProcessor` 详解
java·spring