百度智能云 云生态狂欢季 热门云产品1折起>>>  

新功能/改进

  1. gcron定时任务模块增加运行日志记录功能:https://goframe.org/os/gcron/index
  2. gredis增加全局分组配置功能,并增加更多的配置选项maxIdle/maxActive/idleTimeout/maxConnLifetime:https://goframe.org/database/gredis/index
  3. gcfg模块增加更多的默认配置文件检索路径,并且增加全局分组配置特性,增加Instance单例方法:https://goframe.org/os/gcfg/index
  4. gview模块增加更多的默认配置文件检索路径,并且增加Instance单例方法:https://goframe.org/os/gview/index
  5. ghttp模块新功能及改进:
    • 新增CORSHTTP(S)跨域请求特性: https://goframe.org/net/ghttp/cors
    • 增加TLSConfig配置功能;
    • 去掉路由注册方法的error返回值,当产生注册错误时直接终端打印错误/输出到日志文件;
    • 增加在HTTP Code 302跳转时的Set-Cookie支持;
    • 增加对SESSION ID的安全性检查;
    • 增加对基于HTTPSWebSocket支持(WSS):https://goframe.org/net/ghttp/websocket/index
    • Request对象增加Error方法,用于输出自定义错误信息到WebServer错误日志中;
    • 其他一些改进;
  6. 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})
  7. gconvgvalid模块改进并去掉对私有struct方法属性的转换/校验;
  8. gconv.Map转换方法新增对json tag-omitempty的支持: https://goframe.org/util/gconv/map
  9. gstr模块新增 ReplaceI/ReplaceIByArray/ReplaceIByMap大小写非敏感替换方法;
  10. gutil模块增加IsEmpty方法,用于判断给定变量是否为空(整型0, 布尔false, slice/map长度为0, 其他为nil的情况,判断为空),并增加快捷方法g.IsEmpty
  11. gutil模块增加Export方法,用于导出返回格式化打印的变量内容字符串,并增加快捷方法g.Export
  12. gspath增加缓存及非缓存检索检索方法Search/SearchWithCache
  13. gjson模块增加默认的UseNumber功能支持;
  14. gmap增加SetIfNotExistFunc/SetIfNotExistFuncLock方法;
  15. 迁移greuseport模块到新的仓库:https://github.com/gogf/greuseport
  16. 大量的单元测试完善;

Bug Fix

  1. 修复gqueue模块的资源竞争问题;
  2. 修复gconv.GTime转换失败问题;
  3. 修复gconv.String在转换int参数时字节溢出问题;
  4. 修复ghttp.RequestHTTP Basic Auth校验问题;
  5. 修复gxml针对于非UTF-8编码内容转换的并发安全问题;
  6. 修复gtime部分FormatG&j)格式失效问题;
  7. 修复gudp.Conn对象的RemoteAddr获取客户端连接地址方法问题;
  8. 修复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 mainimport ("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%开源免费。

GoFrame v1.6.0 发布,Go 应用开发框架相关推荐

  1. PrettyZoo V1.8.0 发布了, 一款值的收藏的 Zookeeper 图形化工具

    PrettyZoo 是我在 19 年闲暇时创作的一款 Zookeeper 桌面图形化工具,不仅颜值极高,而且功能齐全,支持 Windows / Mac / Linux 等主流平台. 新版本直接将整个底 ...

  2. 云原生周报 | 百度开源千万级CPS压测软件 dperf;BFE Server v1.5.0 发布

    业界要闻 1. 百度千万级 CPS 的压测软件 dperf 开源了 摘要:百度的智能负载均衡团队开源了一款高性能的网络压力测试软件 dperf.dperf 项目地址https://github.com ...

  3. fastweixin v1.3.0 发布,极速微信公众号开发框架

    fastweixin 发布 1.3.0 版本,微信消息处理器重构,非常感谢 @Nottyjay 贡献的代码,版本更新内容: 1.修复JS-SDK中token过期不刷新的BUG 2.修复网页授权接口返回 ...

  4. 号外号外!RancherOS v1.2.0发布啦!

    RancherOS v1.2.0版本于北京时间2月7日正式发布,从v1.1到v1.2开发周期中,我们收集到了社区用户和商业用户的Bug report和Feature request,感谢大家为此作出的 ...

  5. delphi 企业微信消息机器人_消息通知支持企业微信、钉钉机器人,MeterSphere v1.4.0发布...

    2020年10月27日15:00,MeterSphere v1.4版本发布说明会,现已开启官网报名. 10月27日,MeterSphere开源持续测试平台正式发布v1.4.0版本.在该版本中,Mete ...

  6. 新鲜出炉: Zadig V1.1.0 发布!

    你会爱上 Zadig V 1.1.0 You are gonna love it! 发版啦: Zadig V1.1.0 新增功能  跨项目级别的测试管理模块,不仅支持独立运行测试.并行执行测试.测试分 ...

  7. RapidJSON v1.1.0 发布简介

    时隔 15.6 个月,终于发布了一个新版本 v1.1.0. 新版本除了包含了这些日子收集到的无数的小改进及 bug fixes,也有一些新功能.本文尝试从使用者的角度,简单介绍一下这些功能和沿由. P ...

  8. 开源进展 | WeCross v1.2.0 发布,实现FISCO BCOS与Fabric 2.0 的跨链适配

    WeCross是微众银行自主研发并完全开源的区块链跨链协作平台,致力于促进跨行业.机构和地域的跨区块链信任传递和商业合作,有助于实现异构区块链系统之间安全可信的互操作. WeCross v1.0.0. ...

  9. 集成JIRA/TAPD管理缺陷,增强接口测试,MeterSphere开源持续测试平台v1.2.0发布丨Release Notes

    8月31日,MeterSphere开源持续测试平台正式发布v1.2.0版本.在该版本中,针对测试跟踪模块的缺陷管理功能,我们与主流的JIRA/TAPD平台进行了集成.同时对接口测试进行了全面增强,单接 ...

最新文章

  1. 轻松进行iPad Safari设置
  2. imutils用法总结
  3. go context之WithCancel的使用
  4. linux 电池管理软件,Linux电源管理(2)_Generic PM之基本概念和软件架构
  5. Code Runner for VS Code 突破 2000 万下载量!支持超过 50 种语言
  6. html代码 打开本地文件,打开本地HTML文件
  7. 爬虫用java还是python_网络爬虫是用python比较好,还是Java比较好呢?
  8. 对 n = 2,3,...,300, 判断那些 Mersenne 数 M_n=2^n-1 是素数 | matlab 源码
  9. 新书上市|这套北大数学系青睐的数学科普书,又添新成员
  10. 好文:读客图书董事长华楠接受采访
  11. vlookup匹配的文字显示0_Excel | VLOOKUP函数使用详解
  12. http://www.jb51.net/os/Ubuntu/35201.html
  13. DOS命令的英文全称
  14. node文件通过不同的后缀名解析不同的文件类型
  15. Git - 强制覆盖本地代码[与远程仓库保持一致]
  16. win10关闭自带杀毒软件Windows Defender的两种方法
  17. 油猴+JS代码创建DEAP网页按钮
  18. NetSuite2.0 Restlet脚本 货品新增
  19. Compuware Softice的烦恼
  20. 《招聘一个靠谱的iOS》面试题参考答案

热门文章

  1. CentOS7网络配置ping通外网
  2. nginx一招配置,帮你快速隐藏php后缀名
  3. Linux系统性能相关知识学习
  4. 使用Excel公式,获取 当前 Excel 的Sheet页 的 名字
  5. java方法的理解、调用栈与异常处理
  6. Java 图片处理解决方案:ImageMagick 快速入门教程
  7. 微信第三方登录测试时报Scope参数错误或没有Scope权限解决方法
  8. 如何从数据框的单元格获取值?
  9. 线程池类似于多处理池?
  10. servlet监听器Listener介绍和使用