You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaMail发件人显示名称配置求助:如何实现Stack Overflow<邮箱>格式

如何在JavaMail中配置发件人显示名称

嘿,其实你写的代码里已经藏着实现这个需求的关键啦!想要实现「Stack Overflow do-not-reply@stackoverflow.email」这种显示名称+邮箱地址的格式,只需要调整你代码里msg.setFrom()方法的参数就行。

核心原理

JavaMail的InternetAddress类有一个重载构造方法:InternetAddress(String address, String personal),其中:

  • 第一个参数address是你的发件人邮箱地址
  • 第二个参数personal就是要显示的发件人名称

你当前代码里的msg.setFrom(new InternetAddress(from, "NoReply"));已经在使用这个方法了,这里的"NoReply"就是显示名称,只需要把它替换成你想要的名称(比如"Stack Overflow"),同时确保邮箱地址正确,就能实现你要的效果。

修改后的代码示例

把发件人设置那一行改成这样:

msg.setFrom(new InternetAddress("do-not-reply@stackoverflow.email", "Stack Overflow"));

如果你的显示名称包含中文等非ASCII字符,为了避免乱码,建议指定编码格式,使用另一个重载构造方法:

msg.setFrom(new InternetAddress(from, "我的自定义发件人名称", "UTF-8"));

额外注意事项

  • 你使用的Outlook SMTP服务器(smtp-mail.outlook.com)完全支持这种显示名称配置,不需要额外调整服务器参数
  • 确保Authenticator里的用户名和密码是对应发件人邮箱的正确凭据,不然邮件发送会失败

内容的提问来源于stack exchange,提问作者Rabin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 17:07:52