1. 程式人生 > >比freemarker還好用的模板引擎,poi-tl,動態生成資料

比freemarker還好用的模板引擎,poi-tl,動態生成資料

在之前專案中有這樣一個需求,就是本地儲存合同模板,然後要動態生成合同的內容,之後呼叫第三方(上上籤)去進行簽署合同和蓋章,當說動態生成合同中內容是,我第一個想到的是freemarker,後來跟同事商量了一下最後決定用poi-tl,這是一個純java的模板引擎,是基於word的,用法呢可以說是非常的簡單,現在word中你需要的位置寫上佔位,佔位符的格式是{{佔位}}這個樣子的,如下圖

 

像{{title}}和{{yifang}}這樣,這裡只是個測試,所以命名不太嚴謹,接下來就是程式碼部分了,也是非常的簡單,如下

這就是所需的程式碼,中間設定下劃線的那句並不需要,是我加的,說實話有點多餘了,因為如果模板佔位符是帶有下劃線格式的,那麼資料展示也是帶有下劃線的,然後看一下執行之後的結果

這樣就替換掉啦,下面是所需的pom

<!--
poi-tl
      基於apache poi的word模板引擎,純java 元件
-->
<dependency>
   <groupId>com.deepoove</groupId>
   <artifactId>poi-tl</artifactId>
   <version>1.3.1</version>
</dependency>

寫的不對的地方,希望大家可以不吝賜教