天天看點

freemarker模闆替換生成word

工具類

調用

freemarker模闆替換生成word
freemarker模闆替換生成word

一對一傳值

 集合傳值

freemarker模闆替換生成word

 注:集合傳值中也可以傳回一個集合,在調用的時候放到map中去,擷取值的方式是${别稱dian集合的實體類中對于的屬性},但有個前提 屬性的類型都得是String類型的  不然就報錯

 模闆内增加占位符

注:占位符随意填寫,自己能厘清就行,沒必要和背景的map保持絕對一緻

一對一

freemarker模闆替換生成word

 集合

注:感歎号的意思是其值為null 的話 不報錯,

結果如下:

1.一對一的

 2.表格

freemarker模闆替換生成word

 在寫的時候遇到了兩個問題:

問題1:

 本來以為這是兩個表格,但其實是一個。要知道既然是一個表  那麼他們的key值就不能一樣

剛開始是這麼寫的  出現了上述問題 就是對于不上 因為第一年循環的時候 後面的值都是空的

其中的a是年份循環的下标

 解決問題:

在年份循環的外面

freemarker模闆替換生成word

 具體代碼如下:

具體效果如下:

freemarker模闆替換生成word

至此,問題解決。

問題二:

freemarker模闆替換生成word

 需求是這種表格

 剛開始看到很煩惱,因為後面是12個月 不知道該怎麼寫    有人可能會說直接按照表格那種方式寫不行麼?答案顯然是不行的   因為我不可能去寫12個屬性,并擷取每個屬性對應的值。

後來發現我可以循環擷取   簡單點來說就是 你需要12個key和12個vaule     當然采用集合實體類那種方式顯然是行不通的      于是我設定了12個key  循環設定的,vaule肯定也是循環擷取的

具體代碼如下:

freemarker模闆替換生成word