IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> goframe框架CLI dao命令 -> 正文阅读

[大数据]goframe框架CLI dao命令

goframe2.0+文档

初始化goframe项目

gf  init firstproject(项目名称) 

数据库

创建mysql用户(% 可远程登录)
CREATE USER 'test'@'%' IDENTIFIED BY 'test';
给用户加权限
grant all privileges on *.* to test@'%' identified by 'test';
flush privileges;
修改密码
SET PASSWORD FOR 'test'@'localhost' = PASSWORD('test');
创建数据库
create database `goframe` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
创建表
CREATE TABLE User(
id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT 'UID',
name VARCHAR(25) UNIQUE COMMENT '账号',
password VARCHAR(32) COMMENT 'MD5密码',
nickename VARCHAR(25) COMMENT '昵称',
status INT COMMENT '状态0:启用 1:禁用'
);

goframe

创建gf cli配置文件

# GoFrame CLI tool configuration.
gfcli:
  gen:
    dao:
    - link:            "mysql:test:test@tcp(127.0.0.1:3306)/goframe" # 数据库驱动 :链接地址/数据库
      tables:          "user" # 表名
      removePrefix:    "gf_"
      descriptionTag:  true
      noModelComment:  true




运行 gf gen dao
appledeMac-mini:firstproject apple$ gf gen dao
generated: internal/service/internal/dao/user.go
generated: internal/service/internal/dao/internal/user.go
generated: internal/service/internal/do/user.go
generated: internal/model/entity/user.go
done!

在这里插入图片描述

1、以下3个目录的文件由dao命令生成:

/internal/model/entity	数据模型	
数据模型由工具维护,用户不能修改。

工具每次生成代码文件将会覆盖该目录。

/internal/service/internal/do	数据转换模型	
数据转换模型用于业务模型到数据模型的转换,由工具维护,用户不能修改。

工具每次生成代码文件将会覆盖该目录。

/internal/service/internal/dao	数据操作对象	通过对象方式访问底层数据源,底层基于ORM组件实现。往往需要结合entity和do通用使用。该目录下的文件开发者可扩展修改,但是往往没这种必要。
2、model中的模型分为两类:数据模型和业务模型。

数据模型:通过CLI工具自动生成 model/entity 目录文件,数据库的数据表都会生成到该目录下,这个目录下的文件对应的模型为数据模型。数据模型即与数据表一一对应的数据结构,开发者往往不需要去修改并且也不应该去修改,数据模型只有在数据表结构变更时通过CLI工具自动更新。数据模型由CLI工具生成及统一维护。

业务模型:业务模型即是与业务相关的数据结构,按需定义,例如service的输入输出数据结构定义、内部的一些数据结构定义等。业务模型由开发者根据业务需要自行定义维护,定义到model目录下。

3、dao中的文件按照数据表名称进行命名,一个数据表一个文件及其一个对应的DAO对象。操作数据表即是通过DAO对象以及相关操作方法实现。dao操作采用规范化设计,必须传递ctx参数,并在生成的代码中必须通过Ctx或者Transaction方法创建对象来链式操作数据表。



4、同时,dao采用了工程化规范设计。可以看到,dao/do是service层内部模块,也就是说,只有service层才能访问dao数据操作对象并与底层数据库交互。这样通过工具落地规范的方式避免了项目中随处调用dao操作数据库的情况,规范了请求调用链。

在这里插入图片描述

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-04-15 00:05:37  更:2022-04-15 00:09:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 2:32:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码