资源管理是指可以将任意文件/目录打包为Golang源码文件,并且编译到可执行文件中,随着可执行文件发布。
资源文件在程序启动时将会自解压释放到内存中,供程序只读访问,可以将它当做基于内存的文件管理器。同时,GoFrame
的资源管理特性也支持将文件/目录打包为独立的二进制资源文件使用。由于资源文件在程序运行时是基于内存的文件操作,没有磁盘IO
的开销,因此其文件操作效率非常高。
使用方式:
import "github.com/gogf/gf/v2/os/gres"
接口文档:
https://pkg.go.dev/github.com/gogf/gf/v2/os/gres
gres资源管理组件具有以下显著特点:
css
/js
等文件可达到50~90%的压缩率。
WebServer
、配置管理、模板引擎模块中。
从Golang v1.16版本开始官方提供了静态文件嵌入的embed.FS
特性,整体底层设计和gres
组件类似,压缩比、执行效率也差不多,只是在使用设计和工程化管理上有比较大的差别。GoFrame
资源管理组件的功能更加丰富,框架的核心组件已经完全对接了gres
资源管理组件,并且在GoFrame
提供的标准的工程化管理下能够做到对开发者无感知地使用资源管理特性,具体可以参考章节 资源管理-最佳实践 。
未来GoFrame
基础框架底层不会考虑内置对embed.FS
组件的支持,embed.FS
与gres
组件可以独立使用互不影响。
以下常用方法列表,文档更新可能滞后于代码新特性,更多的方法及示例请参考代码文档:https://pkg.go.dev/github.com/gogf/gf/v2...
Django 中的视图的概念是「一类具有相同功能和模板的网页的集合」。比如,在一个博客应用中,你可能会创建如下几个视图:博客首...
ASP.NET Calendar SelectWeekText 属性 Calendar 控件定义和用法 SelectWeekText 属性用于规定在日历中为选取整个周而显示的文本...
配置一个 ASP.NET 应用程序的行为是由以下两个配置文件中的不同设置决定的:machine.config web.configmachine.config 文件包含...
WebSecurity 属性 - CurrentUserNameWebSecurity 对象定义 CurrentUserName 属性是当前用户在 WebSecurity 数据库中用户资料表...
ASP.NET Button PostBackUrl 属性 Button 控件定义和用法 PostBackUrl 属性用于获得或设置在 Button 控件被点击时回传数据的页面...