Spring Boot中發送郵件時,如何讓發件人顯示別名

之前,我們通過一系列文章,介紹瞭如何在Spring Boot中發送郵件:

已經包含了大部分的應用場景。但最近DD在做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<[email protected]>");  // 發件人的別名設置
message.setTo("[email protected]");
message.setSubject("主題:簡單郵件");
message.setText("測試郵件內容");

mailSender.send(message);

如果你是組織比較複雜的郵件,使用MimeMessage的話也是一樣。在setFrom的時候,像上面這樣寫就可以了。

今日分享就到這裏,感謝閱讀!如果您學習過程中如遇困難?可以加入我們超高質量的Spring技術交流羣,參與交流與討論,更好的學習與進步!更多Spring Boot教程可以點擊直達!,歡迎收藏與轉發支持!

歡迎關注我的公衆號:程序猿DD。第一時間瞭解前沿行業消息、分享深度技術乾貨、獲取優質學習資源

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章