虽然前后端的开发模式,让模板引擎这个东西慢慢淡去,但是有时候还是需要用到这种东西,所以就有了,go调用php实现twig模板引擎的想法。
原理,go 通过exec.Command调用php,通过STDIN,STDOUT 方式进行数据交互
go在初始化阶段提供一些配置参数,比如模板引擎的为止,是否为开发环境等,php接收数据并初始化
初始换环境完毕后,当需要渲染模板,go再讲模板文件和数据以json字符串的形式写入STDIN告知php,
php接收到数据后,解析数据,选取指定的模板并渲染,然后通过STDOUT返回给go
这样一次渲染就结束了
整理好的文件打包在github上了
如果喜欢就动动你的小手指点个赞,star一下吧!
主要通过以下几个过程生成:(一)编写模板文件
(二)配置FreeMarker
(三)统一文件生成工具
(四)数据库操作
(五)封装填充数据
FreeMarker是一款模板引擎:即一种基于模板和动态数据,用于输出文本的通用工具。
FreeMarker模板使用FreeMarker Template Language(FTL)编写,它是一种简单的、专用的语言。
代码生成器的实现原理十分简单,就是根据数据库的某一个或多个业务表的结构,生成对应的Entity.java、Dao.java、Service.java、Controller.java、Mapper.xml文件