内容简介:新功能/改进 gcron定时任务模块增加运行日志记录功能:https://goframe.org/os/gcron/index gredis增加全局分组配置功能,并增加更多的配置选项maxIdle/maxActive/idleTimeout/maxConnLifetime:https://goframe...
新功能/改进
gcron定时任务模块增加运行日志记录功能:https://goframe.org/os/gcron/indexgredis增加全局分组配置功能,并增加更多的配置选项maxIdle/maxActive/idleTimeout/maxConnLifetime:https://goframe.org/database/gredis/indexgcfg模块增加更多的默认配置文件检索路径,并且增加全局分组配置特性,增加Instance单例方法:https://goframe.org/os/gcfg/indexgview模块增加更多的默认配置文件检索路径,并且增加Instance单例方法:https://goframe.org/os/gview/indexghttp模块新功能及改进:- 新增
CORSHTTP(S)跨域请求特性: https://goframe.org/net/ghttp/cors - 增加
TLSConfig配置功能; - 去掉路由注册方法的
error返回值,当产生注册错误时直接终端打印错误/输出到日志文件; - 增加在
HTTP Code 302跳转时的Set-Cookie支持; - 增加对
SESSION ID的安全性检查; - 增加对基于
HTTPS的WebSocket支持(WSS):https://goframe.org/net/ghttp/websocket/index Request对象增加Error方法,用于输出自定义错误信息到WebServer错误日志中;- 其他一些改进;
- 新增
gdb模块新功能及改进:- 新增
Instance单例管理方法; - 新增
Structs/Scan链式操作方法,gdb.DB/TX新增GetStructs/GetScan方法,用于结果集struct/slice映射转换:https://goframe.org/database/gdb/chaining - 新增
Safe链式操作方法(默认非并发安全),用于链式安全控制:https://goframe.org/database/gdb/chaining Where链式操作方法改进:- 方法支持任意的
string/map/slice/struct/*struct类型; - 逻辑调整,当链式操作中存在多个
Where方法调用时,自动转换为And条件; - 支持
slice条件参数,常用在SELECT IN查询中,例如:Where("uid IN(?)", g.Slice{1,2,3}); - 支持在
map类型条件参数的key中传递条件,例如:Where(g.Map{"uid>?", uid});
- 方法支持任意的
- 新增
gconv及gvalid模块改进并去掉对私有struct方法属性的转换/校验;gconv.Map转换方法新增对json tag:-,omitempty的支持: https://goframe.org/util/gconv/mapgstr模块新增ReplaceI/ReplaceIByArray/ReplaceIByMap大小写非敏感替换方法;gutil模块增加IsEmpty方法,用于判断给定变量是否为空(整型0, 布尔false, slice/map长度为0, 其他为nil的情况,判断为空),并增加快捷方法g.IsEmpty;gutil模块增加Export方法,用于导出返回格式化打印的变量内容字符串,并增加快捷方法g.Export;gspath增加缓存及非缓存检索检索方法Search/SearchWithCache;gjson模块增加默认的UseNumber功能支持;gmap增加SetIfNotExistFunc/SetIfNotExistFuncLock方法;- 迁移
greuseport模块到新的仓库:https://github.com/gogf/greuseport - 大量的单元测试完善;
Bug Fix
- 修复
gqueue模块的资源竞争问题; - 修复
gconv.GTime转换失败问题; - 修复
gconv.String在转换int参数时字节溢出问题; - 修复
ghttp.Request的HTTP Basic Auth校验问题; - 修复
gxml针对于非UTF-8编码内容转换的并发安全问题; - 修复
gtime部分Format(G&j)格式失效问题; - 修复
gudp.Conn对象的RemoteAddr获取客户端连接地址方法问题; - 修复
gmap/gcache模块的GetOrSetFuncLock方法,增加对回调方法返回值的nil判断,只有非nil返回值才会被保存;
GF(Go Frame)是一款模块化、松耦合、生产级 Go 应用开发框架。提供了常用的核心开发组件,如:缓存、日志、文件、时间、队列、数组、集合、字符串、定时器、命令行、文件锁、内存锁、对象池、连接池、数据校验、数据编码、文件监控、定时任务、数据库ORM、TCP/UDP组件、进程管理/通信、 并发安全容器等等。并提供了Web服务开发的系列核心组件,如:Router、Cookie、Session、服务注册、配置管理、模板引擎等等,支持热重启、热更新、多域名、多端口、多服务、HTTPS、Rewrite等特性。
特点
- 模块化、松耦合设计;
- 丰富实用的开发模块;
- 详尽的开发文档及示例;
- 完善的本地中文化支持;
- 致力于项目的通用方案;
- 更适合企业及团队使用;
- 更多请查阅文档及源码;
安装
go get -u github.com/gogf/gf
或者 go.mod:
require github.com/gogf/gf latest
如果您是从旧版本
1.x升级到1.5.0那么请参考:1.x升级到1.5.0
限制
golang版本 >= 1.9.2
架构
文档
开发文档:https://goframe.org
接口文档:https://godoc.org/github.com/gogf/gf
使用
package main
import (
"github.com/gogf/gf/g"
"github.com/gogf/gf/g/net/ghttp"
)
func main() {
s := g.Server()
s.BindHandler("/", func(r *ghttp.Request) {
r.Response.Write("Hello World")
})
s.Run()
}
协议
GF 使用非常友好的 MIT 开源协议进行发布,永久100%开源免费。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- MediaPipe:跨平台机器学习应用开发框架
- Ionic 4.0.2 发布,移动应用开发框架
- Ionic 4.0.2 发布,移动应用开发框架
- Ionic 4.3.0 发布,移动应用开发框架
- Ionic 4.4.0 发布,移动应用开发框架
- Ionic 4.6.0 发布,移动应用开发框架
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Code Reading
Diomidis Spinellis / Addison-Wesley Professional / 2003-06-06 / USD 64.99
This book is a unique and essential reference that focuses upon the reading and comprehension of existing software code. While code reading is an important task faced by the vast majority of students,......一起来看看 《Code Reading》 这本书的介绍吧!