筆者在本地測試時直接使用message.setSubject(subject)
的方式設置標題,發送郵件的中文標題可以正常顯示,但是將項目部署到服務器後,發送郵件的中文標題就變成了幾個問號,下面給出解決方案:
String subject = MimeUtility.encodeWord("標題內容", "UTF-8", "Q");
message.setSubject(subject);
通過這種方式得到的subject是類似於=?UTF-8?Q?=E6=A0=87=E9=A2=98=E5=86=85=E5=AE=B9?=
的一串代碼,再交由郵件服務器按照編碼解析,這樣發送的郵件中文標題可以正常顯示。