数据模型又叫做实体模型,主要是来自于底层持久化数据库的数据结构,例如:MySQL
、Redis
、MongoDB
、Kafka
等等。这部分数据结构是由第三方系统维护的,可以通过工具对其集合数据结构进行识别,并自动生化成对应的程序数据模型代码。这部分数据模型的代码位于/internal/model/entity
目录下。开发者不需要手动在程序中维护数据模型,在GoFrame
框架规范中,数据模型统一使用CLI
工具统一维护,代码自动生成。
数据模型示例
业务模型主要包含两类:接口输入/输出模型 与 业务输入/输出模型,由model
模型层统一管理。
接口输入/输出模型用于系统/服务间的接口交互,通常被api
接口层(handler
)调用。在GoFrame
框架规范中,这部分输出输出模型名称以XxxReq
和XxxRes
格式命名。
接口输入模型示例
业务输入/输出模型用于进程内部模块/组件之间的方法调用交互,特别是api->service
或者service->service
之间的调用。在GoFrame
框架规范中,这部分输出输出模型名称以XxxInput
和XxxOutput
格式命名。
业务输入模型与业务输出模型示例
在GoFrame
有一类特殊的业务模型DO
,介于业务模型与数据模型之间,主要用于结合框架强大的ORM
组件大大简便DAO
数据访问操作。
DO
主要用于DAO
数据访问操作
上面我们讲到的都是由model
模型层维护的公共模型,但部分场景下还存在内部私有的模型,用于模块内部调用,不对外公开。
glog对日志分析工具非常友好,支持输出JSON格式的日志内容,以便于后期对日志内容进行解析分析。想要支持JSON数据格...
以下为Golang标准库的一些基础语法和基础函数,GoFrame框架对部分基础函数做了必要的改进。变量可以使用符号|在函数间传递...
模型创建ModelModel方法用于创建基于数据表的Model对象。常见的,也可以使用g对象管理模块中的Model方法在默认...
可观测性是很重要的,目前已经有比较不错的OpenTelemetry标准,各个第三方组件以及厂商都按照这套标准库来暴露和对接观测数...
方法操作方法操作用于原生SQL执行,相对链式操作更偏底层操作一些,在ORM链式操作执行不了太过于复杂的SQL操作时,...
Do方法我们最常用的是Do方法,执行同步指令,通过向RedisServer发送对应的RedisAPI命令,来使用RedisServer的服...
基本介绍资源管理是指可以将任意文件/目录打包为Golang源码文件,并且编译到可执行文件中,随着可执行文件发布。资源文件在程序...