go-zero使用

这个教程看完可以日常使用了

https://www.bilibili.com/video/BV1LS4y1U72n/?spm_id_from=333.788

稍微总结下

  1. java转过去的感觉很亲切,无脑写业务就行(internal-→logic)里面写就行了,别的地方几乎不用管,框架还贴心的写了todo

  2. 生成工具很全,一个生成router这样的业务代码,一个生成model层代码,很java

    1. goctl model mysql ddl -src="sql路径" -dir="."

    2. goctl api go -api temp/nft.api -dir .

  3. 可以自己写sql,舒服,ORM怎么用都不习惯

  4. 单体应用转微服务方便,代价很小

使用时注意点

  1. 自动生成的代码不要动,顶部也会提示,不然下次再自动生成会冲掉,业务逻辑则不会冲掉,可以放心自动生成代码

  2. model层的后续加业务则没法自动生成,可以记录下哪里是自己写的代码,方便后面重新生成

  3. api文件要分模块的话,service名字要一样,这个点稀奇古怪的。

  4. mysql创建表时最好勾上not null,不然model层会出现sql.NullString类型,有点不舒服

  5. time相关的会忽略,自己看情况维护