您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關SpringBoot中如何使用Freemarker構建郵件模板,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
引入依賴
第一步當然是引入freemarker依賴了,如下:
<dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> </dependency>
接下來就是根據我們想要的HTML樣式,創建一個郵件模板,這個模板是一個ftl文件,如下:
<p>你好,${name}童鞋,歡迎加入XXX大家庭!您的入職信息如下:</p> <table border="1" cellspacing="0"> <tr><td><strong >工號</strong></td><td>${workID}</td></tr> <tr><td><strong >合同期限</strong></td><td>${contractTerm}年</td></tr> <tr><td><strong >合同起始日期</strong></td><td>${beginContract?string("yyyy-MM-dd")}</td></tr> <tr><td><strong >合同截至日期</strong></td><td>${endContract?string("yyyy-MM-dd")}</td></tr> <tr><td><strong >所屬部門</strong></td><td>${departmentName}</td></tr> <tr><td><strong >職位</strong></td><td>${posName}</td></tr> </table> <p><strong >希望在未來的日子里,攜手共進!</strong></p>
最終的顯示效果如下:
這個樣式小伙伴可以根據自己的需求靈活調整。有一個要注意的地方: 因為我已經前后端分離了,因此項目中的webapp目錄對我來說已經無關緊要了,創建的意義不大,因此這個郵件模板我把它放在resources目錄下的ftl目錄下。
有了模板,接下來我只需要向模板中傳入數據,并將模板ftl解析為html即可,如下:
Configuration cfg = new Configuration(Configuration.VERSION_2_3_27); cfg.setClassLoaderForTemplateLoading(ClassLoader.getSystemClassLoader(),"ftl"); Template emailTemplate = cfg.getTemplate("email.ftl"); StringWriter out = new StringWriter(); emailTemplate.process(employee,out);
不像在SSM框架中配置freemarker那樣麻煩,這里就幾行代碼:
1.根據所使用的freemarker版本號創建一個Configuration對象
2.設置模板路徑,模板路徑的設置方法有好幾個,我這里因為放在了resources目錄下,因此使用了setClassLoaderForTemplateLoading方法
3.創建模板,通過process方法進行渲染,渲染后的html將放到out這個變量中,然后我們在郵件中直接將之發送出去即可。
以上就是SpringBoot中如何使用Freemarker構建郵件模板,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。