让gorm代码飞起来,gorm+gmodeltool生成entity,让实体类代码更轻松。
背景
不卷!php经历多年的不衰败的原因只有一个,哪就是不卷,但是由于并发和缺乏编译严谨度降低,使得长青树不得己走向了衰败。
但!叱咤风云多年,大企百度、腾讯、新浪、搜狐的首先语言的流行在于,其语言的简洁,对业务表达的更为直接。拒绝java的对象中加层中层,在我眼中哪就是一坨臭臭~
话不多说,上代码,看看效果!
gmodeltool生成实体类
- go环境安装,不多说,去必应一下吧!
- 安装gmodeltool
go install github.com/lingdor/gmodeltool
到这里有2种方式,一处是shell生成,一种是嵌入式生成(就是在代码中生成指定代码段)。
3. 生成entity
gmodeltool gen entity --gorm --dsn 'user:password@tcp(127.0.0.1:3306)/db1' --to-files ./ --tables "tb_user"
生成的entity
tbuser_gen.go
//gmodel:gen:entity:tb_user:10ee7e5ec910d29e251a7a7481b7fed9
type TbUserEntity struct {
id *string `gmodel:"id" gorm:"column:id;primaryKey;"` //
name *string `gmodel:"name" gorm:"column:name"` //
age *int `gmodel:"age" gorm:"column:age"` //
createtime *time.Time `gmodel:"createtime" gorm:"column:createtime"` //
}
//gmodel:gen:end
嵌入式生成-代码段(可以随时一键更新代码)
package main
//go:generate gmodeltool gen entity --gorm --dsn 'user:password@tcp(127.0.0.1:3306)/db1' --tables "tb_user"
//gmodel:gen:entity:@embed:10ee7e5ec910d29e251a7a7481b7fed9
type TbUserEntity struct {
id *string `gmodel:"id" gorm:"column:id;primaryKey;"` //
name *string `gmodel:"name" gorm:"column:name"` //
age *int `gmodel:"age" gorm:"column:age"` //
createtime *time.Time `gmodel:"createtime" gorm:"column:createtime"` //
}
//gmodel:gen:end
gmodeltool 配置
你可以在项目的根目录中放置一个gmodel.yml文件,用于配置gmodeltool生成时,所需的相关配置。如数据库连接dsn,是否显示verbose。
gmodel.yml
gmodel:
verbose: true
connection:
default:
dsn: mysql://root:123456@tcp(127.0.0.1:3306)/db1
user:
dsn: mysql://root:123456@tcp(127.0.0.1:3306)/db2
这样,你就可以不用每次执行gmodeltool指令时都加dsn和verbose参数了,当然可以通过connection参数指定配置中的连接地址。
3ks.
让gorm代码飞起来,gorm+gmodeltool生成entity,让实体类代码更轻松。的更多相关文章
- EA生成实体类代码
引言 在做机房个人版重构的时候,就听说了EA是一个强大的软件.仅仅只是知道的时候,已经画完了图,没有怎么用EA其它的功能,所以一直没有见识过罢了.如今到了机房合作了,想到EA一定要好好用,这样能省不少 ...
- XSD文件生成C#VO实体类
最近公司要做一个项目,需要和现有的其他项目对接,由于不知道他们的数据库,只有XSD文件.所以,我们在修改相应的程序时,就需要根据他们提供的XSD文件,来写我们的VO实体类,由于我写过根据Oracle数 ...
- 使用T4模板生成MySql数据库实体类
注:本文系作者原创,但可随意转载. 现在呆的公司使用的数据库几乎都是MySQL.编程方式DatabaseFirst.即先写数据库设计,表设计按照规范好的文档写进EXCEL里,然后用公司的宏,生成建表脚 ...
- c#实例化继承类,必须对被继承类的程序集做引用 .net core Redis分布式缓存客户端实现逻辑分析及示例demo 数据库笔记之索引和事务 centos 7下安装python 3.6笔记 你大波哥~ C#开源框架(转载) JSON C# Class Generator ---由json字符串生成C#实体类的工具
c#实例化继承类,必须对被继承类的程序集做引用 0x00 问题 类型“Model.NewModel”在未被引用的程序集中定义.必须添加对程序集“Model, Version=1.0.0.0, Cu ...
- 5.7 Liquibase:与具体数据库独立的追踪、管理和应用数据库Scheme变化的工具。-mybatis-generator将数据库表反向生成对应的实体类及基于mybatis的mapper接口和xml映射文件(类似代码生成器)
一. liquibase 使用说明 功能概述:通过xml文件规范化维护数据库表结构及初始化数据. 1.配置不同环境下的数据库信息 (1)创建不同环境的数据库. (2)在resource/liquiba ...
- netbeans中实体类代码的bug
用了netbeans中实体类代码后,忽然报错: com.sun.tools.javac.code.Symbol$CompletionFailure: 找不到sun.util.logging.Platf ...
- Myeclipse 10使用hibernate生成注解(annotation)实体类
以MySQL数据库为例,请在数据库里面建好对应的表. 1.配置数据库链接 打开Myelipse Database Explorer视图 Window-->Open Perspective--&g ...
- SqlServer数据库表生成C# Model实体类SQL语句——补充
在sql语句最前边加上 use[数据库名] 原链接:https://www.cnblogs.com/jhli/p/11552105.html --[SQL骚操作]SqlServer数据库表生成C ...
- SpringBoot整合Mybatis 使用generator自动生成实体类代码、Mapper代码、dao层代码
1.新建一个SpringBoot项目,并引入Mybatis和mybatis-generator相关的依赖. <dependency> <groupId>org.springfr ...
- 如何由XSD自动生成XML和实体类
项目中有时候要用XML作为数据源,因此需要定义XML文件和相应的类,最佳方法是首先定义XSD,然后自动生成实体类,最后生成XML和填充数据:读取XML数据源的时候,首先用XSD验证XML数据格式,然后 ...
随机推荐
- Go泛型解密:从基础到实战的全方位解析
本篇文章深入探讨了Go语言的泛型特性,从其基础概念到高级用法,并通过实战示例展示了其在实际项目中的应用. 关注[TechLeadCloud],分享互联网架构.云服务技术的全维度知识.作者拥有10+年互 ...
- 如何使用Python将PDF转为图片
将PDF转为图片能方便我们将文档内容上传至社交媒体平台进行分享.此外,转换为图片后,还可以对图像进行进一步的裁剪.调整大小或添加标记等操作. 用Python将PDF文件转JPG/ PNG图片可能是大家 ...
- 错误记录-FileStream访问被拒绝
简介: 问题:因项目需要,软件需要读取授权文件中的密文与本机验证码做一定的逻辑比对,使用FileStream实现文件的读取,在本机调试没问题,但在其他同事电脑上有一些出现授权一直不通过的情况. --M ...
- ORB-SLAM3测试
(一)环境搭建教程 1.Ubuntu18.04从零开始搭建orb slam3及数据集测试:https://blog.csdn.net/Skether/article/details/131320852 ...
- Unity - EditorWindow 折叠树显示(IMGUI)
仅适用于2018之前的版本,有UIElements或者UIWidgets的最好用新的 基本实现 树节点 public interface ITreeNode { ITreeNode Parent { ...
- Go语言基准测试(benchmark)三部曲之二:内存篇
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是<Go语言基准测试(benchm ...
- 一文概览NLP句法分析:从理论到PyTorch实战解读
关注TechLead,分享AI全维度知识.作者拥有10+年互联网服务架构.AI产品研发经验.团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI ...
- re1-100
虽然关键的判断函数和"成功"的提示也在这里,但是具体对输入flag的操作却在后面 看到对数组bufParentRead[1]开始赋值"53fc275d81",b ...
- 随机森林(Random Forest)--- 转载
1 什么是随机森林? 作为新兴起的.高度灵活的一种机器学习算法,随机森林(Random Forest,简称RF)拥有广泛的应用前景,从市场营销到医疗保健保险,既可以用来做市场营销模拟的建模,统计客户来 ...
- 使用OSS搭建私有云内网yum仓库的方法
版权声明:原创作品,谢绝转载!否则将追究法律责任. ----- 作者:kirin 使用OSS搭建私有云内网yum仓库的方法 文字&图片内容已脱敏 #.前几天接到一个搭建内网yum源的任务.刚接 ...