業務中經常會遇見郵件傳送場景,前期處理郵件內容時,想到的就是通過字串拼接的方式,如下:
string content =
"使用者["
+ user +
+ project +
"請及時處理."
雖說上述處理方式沒有大問題,但從系統設計的層面上說,這種方式屬於硬編碼,後期難以擴充套件,比如工程中涉及比較多的郵件傳送,每種具體的業務都去這麼拼接內容,若需要修改郵件描述時,就比較麻煩,不靈活。
我們期望使用配置檔案的方式來配置郵件內容,將郵件中的變數定義為轉義符。
mail_template.properties
在完成properties檔案定義後,需要在工程啟動時,載入配置檔案。
@propertysource
("classpath:mail_template.properties"
)@configuration
public
class
springconfigproperty
}
完成配置檔案載入後,就是處理替換邏輯,這裡建立乙個messageformat的工具類,來處理內容替換:
public
class
mailutil
,獲得特定場景中的郵件內容
** @param template 郵件模板
* @param params 引數列表
* @return 替換後的郵件內容
* @author ***x
*/public
static string formatmailcontentfromtemplate
(string template, list
params)
}
參考:
1、
使用php發郵件二(發郵件流程)
傳送郵件過程 1 配置好你的郵箱服務 qq郵箱為例 2 使用socket連線,建立乙個套接字 fp fsockopen hostname,port,errno,errmsg,30 3 向對方郵件伺服器發出的標識自己的身份的命令fputs fp,ehlo ki r n 4 即將進行身份認證fputs ...
使用nodemailer發郵件
最近在學node,就想著node能不能像後台那樣傳送郵件,結果找到了nodemailer這個發郵件的外掛程式,下列 使用qq郵箱發郵件 use strict const nodemailer require nodemailer let transporter nodemailer.createtr...
java發郵件工具類(3)
public boolean setcopyto string copyto try return true catch exception e 設定信的內容 param mailbody return boolean public boolean setbody string mailbody c...