SF
gf开发框架
gf开发框架
注册登录
关注博客
注册登录
主页
关于
RSS
Focus 聚焦社区 v0.1.0 beta,GoFrame 开源社区项目
John
2021-01-08
阅读 3 分钟
2.7k
Focus聚焦社区是GoFrame社区项目,采用了简洁强大的GoFrame作为后端WEB框架, 由于前台系统需要SEO因此使用了GF自带template模板引擎,数据库用MySQL,前端使用jQuery/bootstrap框架。
Golang项目部署
John
2019-02-19
阅读 4 分钟
9.8k
服务器我们推荐使用*nix服务器系列(包括:Linux, MacOS, *BSD),以下使用Ubuntu系统为例,介绍如何部署使用GF框架开发的项目。
Golang类型转换模块 - gconv
John
2018-10-31
阅读 10 分钟
11.5k
gf框架提供了非常强大的类型转换包gconv,可以实现将任何数据类型转换为指定的数据类型,对常用基本数据类型之间的无缝转换,同时也支持任意类型到struct对象的属性赋值。由于gconv模块内部大量使用了断言而非反射(仅struct转换使用到了反射),因此执行的效率非常高。
gf框架之gmlock - 内存锁模块
John
2018-10-18
阅读 5 分钟
2.1k
文章来源:[链接] 内存锁。该模块包含两个对象特性: Locker 内存锁,支持按照给定键名生成内存锁,并支持Try*Lock及锁过期特性; Mutex 对标准库底层sync.Mutex的封装,增加了Try*Lock特性; 使用方式: {代码...} 使用场景: 任何需要并发安全的场景,可以替代sync.Mutex; 需要使用Try*Lock的场景(不需要阻塞等待锁释...
GoFrame框架之gtime时间模块,支持自定义时间格式化语法
John
2018-07-22
阅读 5 分钟
5.6k
文章来源:[链接] 通用时间管理模块,封装了常用的时间/日期相关的方法。并支持自定义的日期格式化语法,格式化语法类似PHP的date语法。 使用方式: {代码...} 方法列表: godoc.org/github.com/johng-cn/gf/g/os/gtime 时间格式 gtime模块最大的特点是支持自定义的时间格式,参考PHP日期时间格式语法,以下是支持的时间...
gf框架之平滑重启特性 - 功能强大灵活
John
2018-05-22
阅读 5 分钟
3.6k
平滑重启(热重启)是指Web Server在重启的时候不会中断已有请求的执行。该特性在不同的项目版本发布的时候特别有用,例如,当需要先后发布两个版本:A、B,那么在A执行的过程当中,我们可以将B的程序直接发布覆盖A的程序,并使用平滑重启特性无缝地将请求过渡到新版本的服务中。
gf框架之分页模块(五) - 自定义分页
John
2018-05-21
阅读 3 分钟
2.8k
由于分页对象预定义的样式比较有限,有的时候我们想自定义分页的样式(标签输出),由于分页对象的的所有方法都是公开的,这便为开发者自定义分页样式提供了非常高的灵活度。开发者可以通过以下方式实现自定义分页内容:
gf框架之分页模块(四) - Ajax分页
John
2018-05-21
阅读 2 分钟
2.1k
Ajax分页与其他分页方式的区别在于,分页链接会使用Javascript方法来实现,该Javascript方法是分页方法,参数固定为该分页对应的分页URL地址。
gf框架之分页模块(三) - 静态分页
John
2018-05-21
阅读 2 分钟
3.1k
在该示例中,我们需要用到分页对象New方法的第五个参数,route...string,该参数是当前请求的路由规则。我们这里可以通过r.Router.Uri方式将路由规则传递给分页对象。其中,ghttp.Request.Router是与当前请求匹配的路由对象,包含路由规则等相关信息,在分页对象中处理分页参数时,我们只会用到Uri属性。
gf框架之分页模块(二) - 动态分页
John
2018-05-21
阅读 2 分钟
2.5k
文章来源:[链接] 动态分页是通过GET参数(通过QueryString)传递分页参数,默认分页参数为page。 示例如下: {代码...} 该示例中,我们展示了四种预定义的分页样式,并通过GET方式进行分页传参。执行后,输出的内容如下图所示:
gf框架之分页模块(一) - 基本介绍
John
2018-05-21
阅读 2 分钟
2.8k
文章来源:[链接] 分页管理由gpage包实现,gpage提供了强大的动态分页及静态分页功能,并且为开发者自定义分页样式提供了极高的灵活度。 使用方式: {代码...} 方法列表:godoc.org/github.com/johng-cn/gf/g/util/gpage {代码...} 我们这里需要着重说明的是三个方法,New,GetContent,EnableAjax。 创建分页对象 在New...
gf框架之服务性能分析 - 可供选择的pprof特性
John
2018-04-18
阅读 3 分钟
4.2k
ghttp包提供了非常强大和简便的服务性能分析功能,内部完美集成了pprof性能分析工具,可以在任何时候通过EnablePprof方法启用性能分析特性,并可自定义性能分析工具页面路由地址,不传递路由地址时,默认URI地址为/debug/pprof。
gf框架之模板引擎 - 基本用法
John
2018-04-18
阅读 5 分钟
3.7k
gf为控制器提供了良好的模板引擎支持,由gmvc.View视图对象进行管理,提供了良好的数据隔离性。控制器视图是并发安全设计的,允许在多线程中异步操作。
gf框架之基本介绍 - 哈喽世界!
John
2018-04-16
阅读 3 分钟
5.9k
这便是一个最简单的Web Server,它不支持静态文件处理,只有一个功能,访问http://127.0.0.1/的时候,它会返回“哈喽世界!”。
gf框架之路由控制 - 强大、灵活、高效
John
2018-04-16
阅读 3 分钟
3.1k
gf框架提供了自建的非常强大的路由控制功能,支持流行的命名匹配规则及模糊匹配规则,并提供了优秀的优先级管理机制。以下是一个服务注册中使用路由控制的示例:
gf框架之gbinary - 二进制数据操作模块
John
2018-04-10
阅读 7 分钟
2.7k
gf框架提供了独立的二进制数据操作包gbinary,主要用于各种数据类型与[ ]byte二进制类型之间的相互转换;以及针对于整型数据进行精准按位处理的功能。常用于网络通信时数据编码/解码,以及数据文件操作时的编码/解码。
gf框架之服务注册 - 框架核心组件,比你以为的更强大
John
2018-04-10
阅读 11 分钟
3.8k
当用户访问某个URI时,Web Server能够精确的调用特定的服务接口提供服务,这些都是通过“服务注册”来实现的。Web Server提供服务需要回调函数/方法/对象/控制器的支持,ghttp包支持多种服务注册模式,为开发者提供非常强大和灵活的接口功能。服务注册是整个Web Server最核心的部分,也是gf框架中最精心设计的一个模块。本...
gf框架之gdb - 优雅强大的数据库ORM
John
2018-03-12
阅读 8 分钟
7.4k
gf框架的数据库ORM操作由gdb包提供支持,gdb包经过非常精心优雅的设计,提供了非常强大的配置管理、方法操作、链式操作、事务操作等功能。gdb包具体API说明文档详见:godoc 。本章节对gdb包的使用进行基本的介绍,包括:gdb包基本功能介绍,配置管理功能说明,常见用法及常用操作示例。
gf框架之grpool – 高性能的goroutine池
John
2018-03-01
阅读 3 分钟
5.5k
Go语言中的goroutine虽然相对于系统线程来说比较轻量级,但是在高并发量下的goroutine频繁创建和销毁对于性能损耗以及GC来说压力也不小。充分将goroutine复用,减少goroutine的创建/销毁的性能损耗,这便是grpool对goroutine进行池化封装的目的。例如,针对于100W个执行任务,使用goroutine的话需要不停创建并销毁100W个...
gf框架之gvalid – 强大灵活的数据校验/表单校验模块
John
2018-03-01
阅读 8 分钟
6.7k
gf提供了非常强大易用的数据校验功能,通过gvalid包提供,封装了40种常用的校验规则,支持单数据多规则校验、多数据多规则批量校验、自定义错误信息、自定义正则校验等特性。由于gf是模块化、低耦合设计,gvalid包也可以在项目中单独引入使用。
gf框架之并发安全容器 - gmap,以及与sync.Map的性能比较
John
2018-02-28
阅读 2 分钟
3.3k
gmap内部有多个类型结构体定义,包括:IntBoolMap、IntIntMap、IntInterfaceMap、IntStringMap、InterfaceInterfaceMap、StringBoolMap、StringIntMap、StringInterfaceMap、StringStringMap、UintInterfaceMap。
gf框架之gparser - 强大灵活的数据格式编码/解析包
John
2018-01-27
阅读 7 分钟
2.4k
gf框架针对常用的数据格式编码解析,提供了异常强大灵活的功能,由gparser包提供,支持Go变量(interface{})、Struct、JSON、XML、YAML/YML、TOML数据格式之间的相互转换,支持按照层级进行数据检索访问、支持运行时动态新增/修改/删除层级变量(并发安全)等特性。gparser包使得对于未知数据结构、多维数组结构的访问、操...