聚合全网技术文章,根据你的阅读喜好进行个性推荐
大家好,本次发布的v2.1版本包含一些与业务实践相关的功能特性、改进以及Bug Fix,建议大家升级。
v2.1
gen service
logic
service
WhereBuilder
SQL
Hook
DeepCopy
gutil.Copy
Copy
gvar, garray, gmap
ORM驱动实现
drivers/clickhouse
clickhouse
goframe ORM
clickhouse/mssql/pgsql/sqlite/oracle
mysql
注册发现实现
polaris
etcd
Service
HTTP/GRPC Client&Server
Node
Nodes
HTTP Client
gclient
ghttp
Request.GetUrl
URL Schema
UploadFile
JS CDN
unpkg.com
goai
OpenAPIV3
x-
gcfg
property
gcmd
CaseSensitive
glog
Handler
JSON
gsession
gproc
garray
Unique
glist
gmap
gset
gtype
gvar
gdb
HOOK
driver
gproperty
Java Property
gjson
gstr
WordWrap
Unicode
RepliceI
gerror
Unwrap
Next
Golang
Equal
Is
gconv
gutil
gutil.Dump
相对于主库稳定的代码组件,CLI开发工具在近期的版本发布有一些非兼容更新,各位在升级时注意发布记录,细节请查看源码调整。
build
pack
docker
docker tag
gen dao
dao/do/entity
service/internal
run
gofmt/goimports
评论删除后,数据将无法恢复
Go 企业级框架 GoFrame 发布 v2.1 版本
大家好,本次发布的
v2.1
版本包含一些与业务实践相关的功能特性、改进以及Bug Fix,建议大家升级。新特性
gen service
命令,支持自动化地根据logic
层级代码,生成service
接口代码、实现注入:接口维护-gen serviceWhereBuilder
特性,用于更加灵活的SQL
条件语句组合:ORM查询-Where/WhereOr/WhereNotHook
特性,用于自定义钩子事件处理:ORM链式操作-Hook特性DeepCopy
特性,用于类型的深度拷贝:gutil.Copy
方法,用于深度拷贝指定内容。Copy
方法,用于深度拷贝自身内容。gvar, garray, gmap
等基础容器类型。主要改进
社区组件
ORM驱动实现
drivers/clickhouse
,用于对接clickhouse
到goframe ORM
组件。clickhouse/mssql/pgsql/sqlite/oracle
组件单元测试。mysql
驱动从主库迁移到社区模块,便于将mysql
从主库解耦。因此从后续版本开始,开发者需要手动引入驱动依赖:https://github.com/gogf/gf/tree/master/contrib/drivers注册发现实现
polaris
北极星服务注册接口实现:https://github.com/gogf/gf/tree/master/contrib/registry/polarisetcd
服务注册发现接口实现组件:https://github.com/gogf/gf/tree/master/contrib/registry/etcd注册发现
Service
实现对象改进为接口定义,并提供默认的Service
实现,提高扩展性和易用性。HTTP/GRPC Client&Server
对接实现。负载均衡
Node
接口定义,新增Nodes
接口定义。HTTP Client
下的服务发现负载均衡问题。网络组件
gclient
ghttp
Request.GetUrl
方法对URL Schema
获取细节。UploadFile
属性自动接收。JS CDN
改为unpkg.com
。goai
OpenAPIV3
协议实现。x-
开头的自定义标签,自动添加OpenAPIV3
的结果中。系统组件
gcfg
property
文件格式的支持。gcmd
CaseSensitive
配置,默认不区分大小写解析,特别针对结构化参数接收影响较大:命令管理-结构化参数glog
Handler
设置功能,开发者可以全局自定义处理glog
组件的所有日志,例如全局输出JSON
文件格式:日志组件-HandlerJSON
格式Handler
供开发者使用:日志组件-Handlergsession
gproc
容器组件
garray
Unique
方法性能,增加DeepCopy
接口实现。glist
DeepCopy
接口实现。gmap
DeepCopy
接口实现。gset
DeepCopy
接口实现。gtype
DeepCopy
接口实现。gvar
Copy
方法,用于深度拷贝当前泛型对象。DeepCopy
接口实现。数据库组件
gdb
WhereBuilder
特性,用于更加灵活的SQL
条件语句组合:ORM查询-Where/WhereOr/WhereNotHOOK
特性,用于自定义钩子事件处理:ORM链式操作-Hook特性driver
前的数据转换处理逻辑。mysql
驱动从主库迁移到社区模块,便于将mysql
从主库解耦。因此从后续版本开始,开发者需要手动引入驱动依赖:https://github.com/gogf/gf/tree/master/contrib/drivers编解码组件
gproperty
gproperty
组件,用于解析Java Property
格式文件。gjson
property
文件格式的编解码、数据操作支持:通用编解码-gjson文本处理
gstr
WordWrap
方法,使得对Unicode
特别是中文换行更加友好。RepliceI
忽略大小写字符串替换在特定场景下的问题。错误处理
gerror
Unwrap
方法(同Next
方法),用以支持Golang
新版本的Unwrap
错误接口。Equal
方法,用于判断两个错误是否相等:错误处理-错误比较Is
方法,用于支持Golang
新版本的Is
错误接口:错误处理-错误比较工具方法
gconv
gutil
gutil.Copy
方法,用于深度拷贝指定内容。gutil.Dump
方法。开发工具
相对于主库稳定的代码组件,CLI开发工具在近期的版本发布有一些非兼容更新,各位在升级时注意发布记录,细节请查看源码调整。
build
命令,支持指定pack
代码文件的生成目录,参数有个别调整。docker
命令,支持多个docker tag
的重命名及仓库自动推送。gen dao
命令,支持自定义dao/do/entity
代码生成目录,不再强制生成到service/internal
目录下:数据规范-gen daogen service
命令,支持自动化地根据logic
层级代码,生成service
接口代码:接口维护-gen servicerun
命令自定义程序启动参数问题、gofmt/goimports
程序路径带空格问题。