1 | mail.smtp.user | String | SMTP的默認用戶名。 |
2 | mail.smtp.host | String | 要連接的SMTP服務器。 |
3 | mail.smtp.port | int | 如果 connect()方法未明確指定一個,則要連接的SMTP服務器端口。默認為25。 |
4 | mail.smtp.connectiontimeout | int | 套接字連接超時值(以毫秒為單位)。此超時由java.net.Socket實現。默認值為無限超時。 |
5 | mail.smtp.timeout | int | 套接字讀取超時值(以毫秒為單位)。此超時由java.net.Socket實現。默認值為無限超時。 |
6 | mail.smtp.writetimeout | int | 套接字寫入超時值(以毫秒為單位)。 此超時是通過每個連接使用java.util.concurrent.ScheduledExecutorService來實現的,該連接計劃在超時后調度線程以關閉套接字。 因此,使用此超時的開銷是每個連接一個線程。 默認值為無限超時。 |
7 | mail.smtp.from | String | SMTP MAIL命令使用的電子郵件地址。設置信封的返回地址。默認為 msg.getFrom() 或 InternetAddress.getLocalAddress() 。注意:以前曾使用過mail.smtp.user。 |
8 | mail.smtp.localhost | String | SMTP HELO或EHLO命令中使用的本地主機名。默認為 InetAddress.getLocalHost().getHostName() 。如果您的JDK和名稱服務配置正確,通常不需要設置。 |
9 | mail.smtp.localaddress | String | 創建SMTP套接字時要綁定的本地地址(主機名)。 默認為Socket class選擇的地址。 通常不需要設置,但對于選擇特定本地地址進行綁定的multi-homed主主機很有用。 |
10 | mail.smtp.localport | int | 創建SMTP套接字時要綁定的本地端口號。默認為Socket類選擇的端口號。 |
11 | mail.smtp.ehlo | boolean | 如果為false,則不要嘗試使用EHLO命令登錄。 默認為true。 通常,EHLO命令的失敗將回退到HELO命令。 此屬性僅適用于未正確使EHLO失敗或未正確實現EHLO的服務器。 |
12 | mail.smtp.auth | boolean | 如果為true,請嘗試使用AUTH命令對用戶進行身份驗證。默認為false。 |
13 | mail.smtp.auth.mechanisms | String | 如果已設置,則列出要考慮的身份驗證機制以及考慮它們的順序。 僅使用服務器支持和當前實現支持的機制。 默認值為“LOGIN PLAIN DIGEST-MD5 NTLM”,其中包括當前實現(除XOAUTH2之外)支持的所有身份驗證機制。 |
14 | mail.smtp.auth.login.disable | boolean | 如果為true,則禁止使用AUTH LOGIN命令。默認為false。 |
15 | mail.smtp.auth.plain.disable | boolean | 如果為true,則禁止使用AUTH PLAIN命令。默認為false。 |
16 | mail.smtp.auth.digest-md5.disable | boolean | 如果為true,則禁止使用AUTH DIGEST-MD5命令。默認為false。 |
17 | mail.smtp.auth.ntlm.disable | boolean | 如果為true,則禁止使用AUTH NTLM命令。默認為false。 |
18 | mail.smtp.auth.ntlm.domain | String | NTLM身份驗證域。 |
19 | mail.smtp.auth.ntlm.flags | int | NTLM協議特定的標志。有關詳細信息,請參見http://curl.haxx.se/rfc/ntlm.html#theNtlmFlags。 |
20 | mail.smtp.auth.xoauth2.disable | boolean | 如果為true,則禁止使用AUTHENTICATE XOAUTH2命令。 由于OAuth 2.0協議需要特殊的訪問令牌而不是密碼,因此默認情況下會禁用此機制。 通過將此屬性顯式設置為“ false”或將“ mail.smtp.auth.mechanisms”屬性設置為“ XOAUTH2”,可以啟用它。 |
21 | mail.smtp.submitter | String | 在MAIL FROM命令的AUTH標記中使用的提交者。 通常由郵件中繼用于傳遞有關郵件原始提交者的信息。 另請參見SMTPMessage的setSubmitter方法。 郵件客戶端通常不使用此功能。 |
22 | mail.smtp.dsn.notify | String | RCPT命令的NOTIFY選項。要么 NEVER,或SUCCESS, FAILURE, 和 DELAY 的某種組合(以逗號分隔)。 |
23 | mail.smtp.dsn.ret | String | MAIL命令的RET選項。要么 FULL 或 HDRS。 |
24 | mail.smtp.allow8bitmime | boolean | 如果設置為true,并且服務器支持8BITMIME擴展,則使用“quoted-printable”或“base64”編碼的郵件文本部分如果遵循RFC2045規則的8bit文本,則轉換為使用“8bit”編碼。 |
25 | mail.smtp.sendpartial | boolean | 如果設置為true,并且一條消息具有一些有效和一些無效的地址,則無論如何都要發送該消息,并通過SendFailedException報告部分失敗。 如果設置為false(默認值),則在收件人地址無效的情況下,不會將郵件發送給任何收件人。 |
26 | mail.smtp.sasl.enable | boolean | 如果設置為true,請嘗試使用javax.security.sasl包來選擇用于登錄的身份驗證機制。默認為false。 |
27 | mail.smtp.sasl.mechanisms | String | 嘗試使用的用空格或逗號分隔的SASL機制名稱列表。 |
28 | mail.smtp.sasl.authorizationid | String | 在SASL身份驗證中使用的授權ID。如果未設置,則使用身份驗證ID(用戶名)。 |
29 | mail.smtp.sasl.realm | String | 與DIGEST-MD5身份驗證一起使用的領域。 |
30 | mail.smtp.sasl.usecanonicalhostname | boolean | 如果設置為true,則由InetAddress.getCanonicalHostName返回的規范主機名將傳遞到SASL機制,而不是用于連接的主機名。默認為false。 |
31 | mail.smtp.quitwait | boolean | 如果設置為false,則發送QUIT命令,并立即關閉連接。如果設置為true(默認值),則使傳輸等待對QUIT命令的響應。 |
32 | mail.smtp.quitonsessionreject | boolean | 如果設置為false(默認值),則在會話發起拒絕時不發送QUIT命令,并且連接立即關閉。如果設置為true,則使傳輸在關閉連接之前發送QUIT命令。 |
33 | mail.smtp.reportsuccess | boolean | 如果設置為true,則使傳輸為每個成功的地址包括一個SMTPAddressSucceededException。 還要注意,這將導致從SMTPTransport的sendMessage方法拋出SendFailedException,即使所有地址正確并且消息已成功發送也是如此。 |
34 | mail.smtp.socketFactory | SocketFactory | 如果設置為實現javax.net.SocketFactory接口的類,則該類將用于創建SMTP套接字。 請注意,這是類的實例,而不是名稱,必須使用put方法(而不是setProperty方法)進行設置。 |
35 | mail.smtp.socketFactory.class | String | 如果設置,則指定實現javax.net.SocketFactory接口的類的名稱。此類將用于創建SMTP套接字。 |
36 | mail.smtp.socketFactory.fallback | boolean | 如果設置為true,則無法使用指定的套接字工廠類創建套接字,這將導致使用java.net.Socket類創建套接字。默認為true。 |
37 | mail.smtp.socketFactory.port | int | 指定使用指定的套接字工廠時要連接的端口。如果未設置,將使用默認端口。 |
38 | mail.smtp.ssl.enable | boolean | 如果設置為true,則默認情況下使用SSL連接并使用SSL端口。對于“smtp”協議,默認為false;對于“smtps”協議,默認為true。 |
39 | mail.smtp.ssl.checkserveridentity | boolean | 如果設置為true,則檢查RFC 2595指定的服務器身份。這些基于服務器證書內容的附加檢查旨在防止中間人(man-in-the-middle)攻擊。默認為false。 |
40 | mail.smtp.ssl.trust | String | 如果設置,并且未指定套接字工廠,則啟用MailSSLSocketFactory的使用。 如果設置為“ *”,則所有主機都是受信任的。 如果設置為以空格分隔的主機列表,則這些主機是可信任的。 否則,信任取決于服務器提供的證書。 |
41 | mail.smtp.ssl.socketFactory | SSLSocketFactory | 如果設置為擴展javax.net.ssl.SSLSocketFactory類的類,則該類將用于創建SMTP SSL套接字。 請注意,這是類的實例,而不是名稱,必須使用put方法(而不是setProperty方法)進行設置。 |
42 | mail.smtp.ssl.socketFactory.class | String | 如果設置,則指定擴展javax.net.ssl.SSLSocketFactory類的類的名稱。此類將用于創建SMTP SSL套接字。 |
43 | mail.smtp.ssl.socketFactory.port | int | 指定使用指定的套接字工廠時要連接的端口。如果未設置,將使用默認端口。 |
44 | mail.smtp.ssl.protocols | string | 指定將為SSL連接啟用的SSL協議。該屬性值是javax.net.ssl.SSLSocket.setEnabledProtocols方法可接受的標記的空格分隔列表。 |
45 | mail.smtp.ssl.ciphersuites | string | 指定將為SSL連接啟用的SSL密碼套件。該屬性值是javax.net.ssl.SSLSocket.setEnabledCipherSuites方法可接受的標記的空格分隔列表。 |
46 | mail.smtp.starttls.enable | boolean | 如果為true,則在發出任何登錄命令之前,允許使用STARTTLS命令(如果服務器支持)將連接切換到 TLS-protected 的連接。 如果服務器不支持STARTTLS,則在不使用TLS的情況下繼續連接。 如果不支持STARTTLS,請參閱mail.smtp.starttls.required屬性失敗。 請注意,必須配置適當的信任庫,以便客戶端信任服務器的證書。 默認為false。 |
47 | mail.smtp.starttls.required | boolean | 如果為true,則要求使用STARTTLS命令。如果服務器不支持STARTTLS命令,或者該命令失敗,則connect方法將失敗。默認為false。 |
48 | mail.smtp.proxy.host | string | 指定將用于連接到郵件服務器的HTTP Web代理服務器的主機名。 |
49 | mail.smtp.proxy.port | string | 指定HTTP Web代理服務器的端口號。默認為端口80。 |
50 | mail.smtp.proxy.user | string | 指定用于與HTTP Web代理服務器進行身份驗證的用戶名。默認情況下,不進行身份驗證。 |
51 | mail.smtp.proxy.password | string | 指定用于與HTTP Web代理服務器進行身份驗證的密碼。默認情況下,不進行身份驗證。 |
52 | mail.smtp.socks.host | string | 指定將用于連接到郵件服務器的SOCKS5代理服務器的主機名。 |
53 | mail.smtp.socks.port | string | 指定SOCKS5代理服務器的端口號。僅當代理服務器未使用標準端口號1080時,才應使用此選項。 |
54 | mail.smtp.mailextension | String | 擴展字符串追加到MAIL命令。 擴展字符串可用于指定標準SMTP服務擴展以及特定于供應商的擴展。 通常,應用程序應使用SMTPTransport方法supportsExtension來驗證服務器是否支持所需的服務擴展。 請參閱RFC 1869和其他定義特定擴展名的RFC。 |
55 | mail.smtp.userset | boolean | 如果設置為true,則在isConnected方法中使用RSET命令而不是NOOP命令。在某些情況下,在執行許多NOOP命令后,sendmail的響應速度會很慢。使用RSET可以避免此sendmail問題。默認為false。 |
56 | mail.smtp.noop.strict | boolean | 如果設置為true(默認值),則堅持使用NOOP命令的250響應代碼來指示成功。 isConnected方法使用NOOP命令來確定連接是否仍然有效。 一些較舊的服務器在成功時返回錯誤的響應代碼,一些服務器根本不執行NOOP命令,因此總是返回失敗代碼。 將此屬性設置為false可處理以這種方式損壞的服務器。 通常,當服務器超時連接時,它將發送421響應代碼,客戶端將其視為對它發出的下一個命令的響應。 超時連接時,某些服務器會發送錯誤的故障響應代碼。 處理以這種方式損壞的服務器時,請勿將此屬性設置為false。 |