golang服务端项目代码自动生成


  公司为了提高开发效率,让我搞一个代码自动生成的工具,最好是根据数据库可以生成全套的(从router到dao)那种,于是我上万能的github上找了一个,找到一款autocreate的代码生成工具,本身也是使用go开发的,我看了一下,效果还不错,并且操作方便简洁,而且还有web界面,clone下来之后,为了让生成的代码风格跟我们的项目保持一致,所以我不得不动源码,原本以为很难,但是百度了一下原理就是根据模板渲染。

这些就是项目中的模板,包括从model-router-controller-service-dao,当然这些是已经根据公司项目修改过的模板,开始只有一个controller跟dao以及model,其余的根据自己需求加就可以了,因为我想要极致的偷懒,所以直接生成了全套的。

操作这些模板的就是这个文件

 文件里的核心代码,当然这也是修改过的

 据我使用后得知,里面所谓的三个关键的名字只有table和module有用,另一个随便填就可以了。

修改之后,在将文件的生成目录修改为你项目的目录就可以了。控制生成文件目录的是*ContertFile里面的file变量。

全部修改后,我们就可以go run main.go运行起来,进入localhost:8081,就可以看到如下界面

选择其中一个表,就可以进行代码自动生成了!记住,表一定要有备注!表一定要有备注!表一定要有备注!不然是生成不了代码的。

这是生成的controller中的一个例子

 生成之后,service中是没有逻辑的,只需要根据自己的需求增增改改就好啦,将原来的开发时间缩短了一半以上!再也不用做那些枯燥的事情!开发从建表-复制粘贴*n-增增改改-自测  变成了 建表-点一下-增增改改-自测

现在公司所有服务端的小伙伴都开始用了,我作为一个实习生,能做好这件事,其实心里的成就感也是很大的haha!