GoFrame v1.6.0 发布,Go 应用开发框架

栏目: 后端 · 发布时间: 5年前

内容简介:或者如果您是从旧版本

新功能/改进

  1. gcron 定时任务模块增加运行日志记录功能: https://goframe.org/os/gcron/index
  2. gredis 增加全局分组配置功能,并增加更多的配置选项 maxIdle/maxActive/idleTimeout/maxConnLifetimehttps://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 模块新功能及改进:
    • 新增 CORS HTTP(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

架构

GoFrame v1.6.0 发布,Go 应用开发框架

文档

开发文档: 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% 开源免费。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据挖掘技术

数据挖掘技术

[美]MichaelJ.A.B / 别荣芳、尹静、邓六爱 / 机械工业 / 2006-7 / 49.00元

本书是数据挖掘领域的经典著作,数年来畅销不衰。全书从技术和应用两个方面,全面、系统地介绍了数据挖掘的商业环境、数据挖掘技术及其在商业环境中的应用。自从1997年本书第1版出版以来,数据挖掘界发生了巨大的变化,其中的大部分核心算法仍然保持不变,但是算法嵌入的软件、应用算法的数据库以及用于解决的商业问题都有所演进。第2版展示如何利用基本的数据挖掘方法和技术,解决常见的商业问题。 本书涵盖核心的数......一起来看看 《数据挖掘技术》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

URL 编码/解码
URL 编码/解码

URL 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具