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: ,这样开发时代码生成才能找到前端代码存放位置,才能做新增改删除操作。

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

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/852160.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Rust : windows下protobuf和压缩传输方案

此前dbpystream库是用python开发 web api。今天在rust中试用一下protobuf。 本文关键词:编译器、protobuf、proto文件、序列化、zstd压缩,build。 一、 protobuf编译器下载 具体见相关文章。没有编译器,protobuf无法运行。 windows参见&am…

【皇帝的新衣】虚拟小组长的团队管理

团队有时候会需要设立虚拟小组长来分组帮忙管理,那么,虚拟小组的负责人应当怎么做好管理动作? 目前很多大厂追求团队管理上的扁平化,但真正有实职的领导们一般管理30人数,此时需要一个虚拟小组长来分组帮忙管理。 一、…

字节出品SDXL-Lightning:文生图开放模型新突破

生成模型的研究中,文本到图像的生成一直是一个充满挑战的任务。传统的扩散模型虽然在生成质量上取得了显著的成果,但其生成过程往往需要大量的迭代步骤,这不仅导致计算成本高昂,而且生成速度缓慢,难以满足实时或近实时…

时间类:SimpleDateFormatk

一.作用 1.格式化:把时间变成我们喜欢的格式。 2.解析:把字符串表示的时间变成Date对象。 二.默认格式 SimpleDateFormat sdf1 new SimpleDateFormat();Date d1 new Date(0L); // format表示格式化的意思String str1 sdf1.format(d1);System.out.printl…

【MATLAB源码-第225期】基于matlab的计算器GUI设计仿真,能够实现基础运算,三角函数以及幂运算。

操作环境: MATLAB 2022a 1、算法描述 界面布局 计算器界面的主要元素分为几大部分:显示屏、功能按钮、数字按钮和操作符按钮。 显示屏 显示屏(Edit Text):位于界面顶部中央,用于显示用户输入的表达式和…

没有特斯拉的开源专利,就没有中国电动车产业今天的成就?

原文链接:没有特斯拉的开源专利,就没有中国电动车产业今天的成就? 特斯拉的开源专利,对中国电动车产业的影响有多大? 2014年6月12日(June 12, 2014),特斯拉(TESLA&…

nodejs 某音douyin网页端搜索接口及x_bogus、a_bogus(包含完整源码)(2024-06-13)

前言 x_bogus或a_bogus算法大概是对数据、ua、时间戳、浏览器的几个指纹进行计算,拿到一个110位大数组,然后转字符,在头部再添加十二位随机字符,再进行魔改的base64加密。 问:抖音的x_bogus、a_bogus值有什么用&#x…

react路由的使用

安装 npm install react-router-dom main.tsx中配置 import React from react import { RouterProvider } from react-router-dom import ReactDOM from react-dom/client import App from ./App.tsx import normalize.css import ./index.cssimport router from ./router/i…

网工内推 | 外企、上市公司运维工程师,有软考中高项证书优先

01 优尼派特(苏州)物流有限公司 🔷招聘岗位:软件运维测试工程师 🔷任职要求: 1、负责公司自主研发的软件售后服务工作, 包括软件的安装, 调试, 升级,培训, 参数配置, 需求与Bug的处理; 2、负责数据库升级及…

远程主机强迫关闭了一个现有的连接redis

引言 在使用 Redis 进行开发和运维过程中,我们可能会遇到 Redis 连接被远程主机强制关闭的情况。本文将介绍造成这种情况的原因,并给出一些处理方法和建议。 远程主机强制关闭连接的原因 远程主机强制关闭连接通常是由于网络不稳定、连接超时、Redis 配…

数据质量测试:测试数据有效性和准确性的方法

以下为作者观点,来看看你认同吗? 如果西西弗斯(编者注:希腊神话中的人物)是一个数据分析师或数据科学家,他在山上滚动的巨石将是他的数据质量保障。即使所有获取、处理和建模的工程流程都无懈可击&#xf…

HarmonyOs修改应用名称和图标方法

最近在开发Harmony应用,发现修改app.json5下的lable:app_name和icon不生效 后来经过查找,原来还需要更改entry下的src/main/module.json5才行,具体操作路径是: 更改后生效:

一步一步用numpy实现神经网络各种层

1. 首先准备一下数据 if __name__ "__main__":data np.array([[2, 1, 0],[2, 2, 0],[5, 4, 1],[4, 5, 1],[2, 3, 0],[3, 2, 0],[6, 5, 1],[4, 1, 0],[6, 3, 1],[7, 4, 1]])x data[:, :-1]y data[:, -1]for epoch in range(1000):...2. 实现SoftmaxCrossEntropy层…

Vue31-自定义指令:总结

一、自定义函数的陷阱 1-1、自定义函数名 自定义函数名,不能用驼峰式!!! 示例1: 示例2: 1-2、指令回调函数的this 【回顾】: 所有由vue管理的函数,里面的this直接就是vm实例对象。…

Linux发邮件的工具推荐有哪些?如何配置?

Linux发邮件的功能怎么样?Linux系统如何设置服务器? 在Linux操作系统中,有多种工具可供选择用来发送电子邮件,每种工具都有其独特的特点和适用场景。AokSend将介绍几种常用的Linux发邮件工具,并分析它们的优缺点和适用…

Linux Kernel入门到精通系列讲解(QEMU-虚拟化篇) 2.5 Qemu实现RTC设备

1. 概述 上一章节起(5.4小节),我们已经把整个Naruto Pi都跑通了,从BL0到kernel再到Rootfs都通了,目前可以说已经具备学习Linux得基础条件,剩下得都只是添砖加瓦,本小节我们将添加RTC,如果你还没有添加RTC,你可以试试不添加RTC时,Linux的时间戳会很奇怪,加了RTC后,…

Linux部署mysql8.0.28数据库

目录 1.基础准备 (1)首先去官网下载二进制安装包 (2)下载好之后上传至服务器 (3)禁用关闭selinux和防火墙 (4)挂载光盘搭建本地yum仓库 2.解压到指定目录 3.检查系统是否安装mariadb 4.安装MySQL数据库 (1)进入MySQL目录 看到‘完毕’就说面mysql已经安装成功了 4.初…

Python数据结构——集合(详细版)

集合是一种可迭代的、无序的、不能包含重复元素的数据结构。与序列相比,序列中的元素是有序的,可以重复出现,而集合中的元素是无序且不能有重复元素。 序列强调的是有序,集合强调的是不重复。当不考虑顺序,且没有重复…

python中的数据分析(juypter)

加载数据后的套路 df.head() df.info() df.describe() 选择部分数据 df[[要选中的列名的列表]] df.loc[,] df.iloc[,] df.query() 增加 df[新列名] [新值] df.insert(loc , column,value ) 删除 df.drop() df.drop_duplicates() axis 0 可以改成1 inplace 修改数据 df…

解决el-table表格拖拽后,只改变了数据,表头没变的问题

先看看是不是你想要解决的问题 拖拽后表头不变的bug修复 这个问题一般是使用v-for对column的数据进行循环的时候,key值绑定的是个index导致的,请看我上篇文章:eleplus对el-table表格进行拖拽(使用sortablejs进行列拖拽和行拖拽):-…