Go语言的GoFly快速开发框架已经支持Postgresql和Mysql两种数据库

本文主要是介绍Go语言的GoFly快速开发框架已经支持Postgresql和Mysql两种数据库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

两个数据库的选择

我们框架为了方便大家开发能更加业务场景选择不同侧重性能要求的数据,我们把MySQL和PostgreSQL两个在开源界很有名气数据库都支持进去。这样一个企业可以在开发习惯不改变情况下可以有两个选择。

这样的话我们在选择数据库系统时,需要根据实际应用场景来权衡。

  • 如果您的项目需要处理大量读操作、对性能要求较高,并且不需要过于复杂的数据类型和查询,那么MySQL可能是一个更好的选择。
  • 如果您的项目需要处理复杂查询、具有复杂数据类型和高度并发的需求,或者您需要强大的扩展性和自定义功能,那么PostgreSQL可能更适合您。

此外,还需要考虑团队的技术栈和经验。如果您的团队对MySQL更熟悉,那么选择MySQL可能更容易实现项目的快速开发和部署。而如果您的团队对PostgreSQL有更深入的了解和经验,那么选择PostgreSQL可能更能发挥团队的技术优势。

数据库的使用

1.mysql

 我们框架默认mysql配置,直接安装开发文档安装即可,安装步骤简单步骤为:

1.下载框架源码

2.把代码解压到Go工程目录下

3.运行go项目,命名为:fresh 或者 go run main.go

4.点击http://127.0.0.1:8200/common/install/index 进行安装

2.PostgreSQL

如果你是用PostgreSQL数据库,那么你的自己手动导入数据库数据,并到resource\config.yaml自己配置一下数据库的账号密码等参数,安装步骤简单步骤为:

1.下载框架源码

2.把代码解压到Go工程目录下

3.运行go项目,命名为:fresh 或者 go run main.go

4.下载数据库sql文件:点击这里下载 ,如果无法下载请到社区开发文档:开发文档下载。

5.配置resource\config.yaml数据库配置项,完整配置文件如下,你替换一下你的数据库具体账号密码等参数:

database: #数据库配置default:#地址hostname: 127.0.0.1#端口           hostport: 5432#账号                 username: postgres#密码              password: gofly#数据库名称           dbname: gofly_bs#表名前缀prefix: type:          "pgsql"                   #数据库类型(如:mariadb/tidb/mysql/pgsql/mssql/sqlite/oracle/clickhouse/dm) extra:          ""                       #不同数据库的额外特性配置,由底层数据库driver定义role:          "master"                  #数据库主从角色(master/slave),不使用应用层的主从机制请均设置为masterdebug:         false                     #开启调试模式dryrun:        0                         #ORM空跑(只读不写)weight:        100                       #负载均衡权重,用于负载均衡控制,不使用应用层的负载均衡机制请置空charset:       "utf8mb4"                 #数据库编码(如: utf8/utf8mb4/gbk/gb2312),一般设置为utf8mb4,低版本数据库设置utf8timezone:      "Asia/Shanghai"           #时区配置,例如:Local",如果pgsql配置:Asia/ShanghaimaxIdle:       10                        #连接池最大闲置的连接数maxOpen:       100                       #连接池最大打开的连接数maxLifetime:   "30s"                     #连接对象可重复使用的时间长度createdAt:     "createtime"              #自动创建时间字段名称updatedAt:     "updatetime"              #自动更新时间字段名称deletedAt:     "deletetime"              #软删除时间字段名称#配置sql日志文件logger:                                   path:    "runtime/log/sql"level:   "all"stdout:  true
app: #应用配置#版本号version: 2.3.5#运行服务端口(根据您的实际情况修改)port: 8200#接口合法性验证-加密字符串apisecret: gofly@888#接口JWT验证、跨域域名-不添加请求时报403 (开发、部署必改),部署域名时:“https://sg.goflys.cn”替换成您的域名,不限制则配*allowurl: http://localhost:9200,http://localhost:9201,http://127.0.0.1:9200,http://127.0.0.1:9201#token超时时间单位分钟 tokenouttime: 120#调用cpu个数 如果无需设置请写0cpunum: 0#登录是否启用人机验证loginCaptcha: true# 框架运行环境,Gin框架在运行的时候默认是debug模式 有: 开发:debug,生产:release,测试模式:testrunEnv: debug# 配置代码生成时-前端代码根目录位置(开发必改)vueobjroot: D:/Project/develop/vue/gofly_admin_v2#业务端目录名称 默认business,如果您改成其他请修改成定义目录名称busDirName: business#管理端目录名称 默认admin,如果您改成其他请修改成定义目录名称adminDirName: admin#配置企业私有仓网址-后台下载是有部署在代码仓配置companyPrivateHouse: # 配置根域名访问重定向路径,默认是业务端后台rootview: webbusiness#不需要token验证-根模块noVerifyTokenRoot: webbusiness#不需要api接口合法性验证-根模块md5加密noVerifyAPIRoot: webbusiness#不需要验证token-具体请求路径noVerifyToken: /common/uploadfile/getfile,/common/install/index,/business/user/getLogininfo,/business/user/logout,/common/install/save,/admin/user/login,/admin/user/logout,/admin/user/resetPassword,/business/user/login,/common/basetool/getCaptcha,/common/basetool/loginCaptcha,/business/user/resetPassword,/admin/user/getLogininfo,/common/upload/fileNov,/business/cronjob/getTest#不需要接口合法性-具体请求路径noVerifyAPI: /common/uploadfile/getfile,/common/install/index,/common/install/save,/common/basetool/getCaptcha,/business/cronjob/getTest
# 日志配置
logger:path:    "runtime/log"level:   "all"stdout:  false
# Redis数据库配置
redis:default:address: 127.0.0.1:6379db: 1cache:address: 127.0.0.1:6379db: 1pass: "123456"idleTimeout: 600

 6.下载驱动的文件:点击这里下载pgsql驱动,然后把下载驱动文件解压到utils\drivers目录下。

7.在main.go的import中引入pgsql驱动,代码如下:

package mainimport (//引入数据库驱动// _ "gofly/utils/drivers/mysql"_ "gofly/utils/drivers/pgsql"// _ "gofly/utils/drivers/redis""gofly/utils/router"
)func main() {// 启动服务器router.RunServer()
}

8.安装前端

由于pgsql还不支持UI界面安装,所以前端代码无法自动安装,需要你手动复制到您前端vue开发目录中解压,前端代码zip包在devsource\developer\install\vuecode下。

9.请把前端代码安装位置路径配置到resource\config.yaml中app下的 vueobjroot: ,这样开发时代码生成才能找到前端代码存放位置,才能做新增改删除操作。

到此你就个正常使用我,我们框架了。

 

这篇关于Go语言的GoFly快速开发框架已经支持Postgresql和Mysql两种数据库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1037089

相关文章

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

MySQL 中的 CAST 函数详解及常见用法

《MySQL中的CAST函数详解及常见用法》CAST函数是MySQL中用于数据类型转换的重要函数,它允许你将一个值从一种数据类型转换为另一种数据类型,本文给大家介绍MySQL中的CAST... 目录mysql 中的 CAST 函数详解一、基本语法二、支持的数据类型三、常见用法示例1. 字符串转数字2. 数字

Mysql实现范围分区表(新增、删除、重组、查看)

《Mysql实现范围分区表(新增、删除、重组、查看)》MySQL分区表的四种类型(范围、哈希、列表、键值),主要介绍了范围分区的创建、查询、添加、删除及重组织操作,具有一定的参考价值,感兴趣的可以了解... 目录一、mysql分区表分类二、范围分区(Range Partitioning1、新建分区表:2、分

MySQL 定时新增分区的实现示例

《MySQL定时新增分区的实现示例》本文主要介绍了通过存储过程和定时任务实现MySQL分区的自动创建,解决大数据量下手动维护的繁琐问题,具有一定的参考价值,感兴趣的可以了解一下... mysql创建好分区之后,有时候会需要自动创建分区。比如,一些表数据量非常大,有些数据是热点数据,按照日期分区MululbU

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

MySQL 删除数据详解(最新整理)

《MySQL删除数据详解(最新整理)》:本文主要介绍MySQL删除数据的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、前言二、mysql 中的三种删除方式1.DELETE语句✅ 基本语法: 示例:2.TRUNCATE语句✅ 基本语

MySQL中查找重复值的实现

《MySQL中查找重复值的实现》查找重复值是一项常见需求,比如在数据清理、数据分析、数据质量检查等场景下,我们常常需要找出表中某列或多列的重复值,具有一定的参考价值,感兴趣的可以了解一下... 目录技术背景实现步骤方法一:使用GROUP BY和HAVING子句方法二:仅返回重复值方法三:返回完整记录方法四:

从入门到精通MySQL联合查询

《从入门到精通MySQL联合查询》:本文主要介绍从入门到精通MySQL联合查询,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下... 目录摘要1. 多表联合查询时mysql内部原理2. 内连接3. 外连接4. 自连接5. 子查询6. 合并查询7. 插入查询结果摘要前面我们学习了数据库设计时要满