FreeMarker根据模板生成Java代码,光这句话,大家想必也知道它的应用了,比如流行的DRY原则,该原则的意思,可简单概述为"不要写重复的代码"。

比如Java中三层架构,数据访问层,业务逻辑层,表现层,光这三层就出现重复性的增删改查及其相关的界面代码。

如何不写重复的增删改查相关的代码,可以参考我的MP实战系列文章和MyBatis的逆向工程(针对Java相关框架):

其中MP实战系列(六)之代码生成器讲解 用的是volocity模板引擎。原理与FreeMarker本质上是一致的,这个本质一致,你可以理解为都是基于已有的模板进行代码生成。

 

下面进入简单示例讲解:

 

一、导入maven依赖

 

二、新建com.freemarker.hello.templates包,并在该包下编写模板文件test.ftl

 

三、编写运行生成对应Java代码类

 

四、步骤三成功,刷新(refresh)项目即可,看到com.freemark.hello有一个User类

 

小结:该示例非常简单,freemarker的强大不足以在此体现,不过该示例对于初学者或者准备研究freemarker的开发者有一定的启示意义。

比如:遵守"DRY原则",对于开发效率的提高,帮助非常大。