广告
返回顶部
首页 > 资讯 > 精选 >Go语言的开发工具如何使用
  • 764
分享到

Go语言的开发工具如何使用

2023-07-02 09:07:41 764人浏览 泡泡鱼
摘要

这篇文章主要讲解了“Go语言的开发工具如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Go语言的开发工具如何使用”吧!JSON-to-go输入:[   &

这篇文章主要讲解了“Go语言的开发工具如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Go语言的开发工具如何使用”吧!

JSON-to-go

Go语言的开发工具如何使用

输入:

[    {        "input_index": 0,        "candidate_index": 0,        "delivery_line_1": "1 N Rosedale St",        "components": {            "primary_number": "1",            "street_predirection": "N",            "street_name": "Rosedale",            "street_suffix": "St",            "city_name": "Baltimore",            "state_abbreviation": "MD"        }    }]

输出:

type AutoGenerated []struct {    InputIndex     int    `json:"input_index"`    CandidateIndex int    `json:"candidate_index"`    DeliveryLine1  string `json:"delivery_line_1"`    Components     struct {        PrimaryNumber      string `json:"primary_number"`        StreetPredirection string `json:"street_predirection"`        StreetName         string `json:"street_name"`        StreetSuffix       string `json:"street_suffix"`        CityName           string `json:"city_name"`        StateAbbreviation  string `json:"state_abbreviation"`    } `json:"components"`}

yaml-to-go

Go语言的开发工具如何使用

输入:

image: golang:latestbefore_script:  - mkdir -p $GOPATH/src/$(dirname $REPO_NAME)  - ln -svf $CI_PROJECT_DIR $GOPATH/src/$REPO_NAME  - cd $GOPATH/src/$REPO_NAMEstages:  - test  - build  - deployfORMat:  stage: test  script:    - go fmt $(go list ./... | grep -v /vendor/)    - go vet $(go list ./... | grep -v /vendor/)    - go test -race $(go list ./... | grep -v /vendor/)

输出:

type AutoGenerated struct {    Image        string   `yaml:"image"`    BeforeScript []string `yaml:"before_script"`    Stages       []string `yaml:"stages"`    Format       struct {        Stage  string   `yaml:"stage"`        Script []string `yaml:"script"`    } `yaml:"format"`}

table-to-go

假设有这样一张表:

CREATE TABLE `prefix_user` (  `Id` int(11) NOT NULL AUTO_INCREMENT,  `Email` varchar(32) NOT NULL DEFAULT '' COMMENT '邮箱',  `PassWord` varchar(32) NOT NULL DEFAULT '' COMMENT '密码',  `CreatedAt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,  PRIMARY KEY (`Id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户表'

使用方式分两种,分别是命令行调用和写 Go 代码:

命令行调用

下载对应平台的可执行文件, 下载地址:

https://GitHub.com/gohouse/converter/releases

命令行执行:

./table2struct-linux.v0.0.3.bin -file model.go -dsn xxx -table user

参数说明:

-dsn            string 数据库dsn配置-enableJsonTag  bool 是否添加json的tag-file           string 保存路径-packageName    string 包名-prefix         string 表前缀-realNameMethod string 结构体对应的表名-table          string 要迁移的表-tagKey         string tag的key

Go 代码调用

安装库:

go get github.com/gohouse/converter

代码:

package mainimport (    "fmt"    "github.com/gohouse/converter")func main() {    // 初始化    t2t := converter.NewTable2Struct()    // 个性化配置    t2t.Config(&converter.T2tConfig{        // 如果字段首字母本来就是大写, 就不添加tag, 默认false添加, true不添加        RmTagIfUcFirsted: false,        // tag的字段名字是否转换为小写, 如果本身有大写字母的话, 默认false不转        TagToLower: false,        // 字段首字母大写的同时, 是否要把其他字母转换为小写,默认false不转换        UcFirstOnly: false,        //// 每个struct放入单独的文件,默认false,放入同一个文件(暂未提供)        //SeperatFile: false,    })    // 开始迁移转换    err := t2t.        // 指定某个表,如果不指定,则默认全部表都迁移        Table("user").        // 表前缀        Prefix("prefix_").        // 是否添加json tag        EnableJsonTag(true).        // 生成struct的包名(默认为空的话, 则取名为: package model)        PackageName("model").        // tag字段的key值,默认是orm        TagKey("orm").        // 是否添加结构体方法获取表名        RealNameMethod("TableName").        // 生成的结构体保存路径        SavePath("/Users/fizz/go/src/github.com/gohouse/gupiao/model/model.go").        // 数据库dsn,这里可以使用 t2t.DB() 代替,参数为 *sql.DB 对象        Dsn("root:root@tcp(localhost:3306)/test?charset=utf8").        // 执行        Run()    fmt.Println(err)}

输出:

package modelimport "time"type User struct {    Id         int     `json:"Id" orm:"Id"`    Email      string  `json:"Email" orm:"Email"`           // 邮箱    Password   string  `json:"Password" orm:"Password"`     // 密码    CreatedAt  string  `json:"CreatedAt" orm:"CreatedAt"`}func (*User) TableName() string {    return "user"}

感谢各位的阅读,以上就是“Go语言的开发工具如何使用”的内容了,经过本文的学习后,相信大家对Go语言的开发工具如何使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: Go语言的开发工具如何使用

本文链接: https://www.lsjlt.com/news/341120.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Go语言的开发工具如何使用
    这篇文章主要讲解了“Go语言的开发工具如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Go语言的开发工具如何使用”吧!json-to-go输入:[   &...
    99+
    2023-07-02
  • 有哪些go语言开发工具
    go语言开发工具:1、GoLand;2、Visual Studio Code;3、Sublime Text;4、Vim;5、LiteIDE;6、GoClipse;7、Delve;8、GoDoc;9、GoCodify;10、GoSublime...
    99+
    2023-12-11
    go语言 开发工具
  • go语言开发工具是什么
    go语言开发工具是Go语言的编译器和运行时环境、Go语言的包管理工具、Go语言的集成开发环境(IDE)、Go语言的代码分析工具、Go语言的性能分析工具、Go语言的测试工具。1、Go语言的编译器和运行时环境,提供了完善的运行时环境,包括垃圾回...
    99+
    2023-07-31
  • 实用的Go语言开发工具及使用示例
    目录前言json-to-goyaml-to-gotable-to-go命令行调用Go 代码调用前言 孙悟空在花果山称王的时候,特意去了一趟东海,在那里淘到了如意金箍棒。因为身为一个山...
    99+
    2022-11-13
  • go语言ide开发工具有哪些
    开发工具有:1、GoLand,支持跨平台,丰富的功能,如代码补全、调试器、测试工具、版本控制集成等;2、Visual Studio Code,有智能提示、代码补全、调试功能;3、Sublime Text,可以进行Go语言开发,有语法高亮、代...
    99+
    2023-12-11
    go语言 Golang
  • 如何使用Go语言和Redis开发团队协作工具
    如何使用Go语言和Redis开发团队协作工具引言:在团队协作中,高效的工具可以帮助团队成员更好地协同工作。本文将介绍如何使用Go语言和Redis开发一个简单的团队协作工具,并提供具体的代码示例。Go语言简介Go语言是一种开源的静态类型编程语...
    99+
    2023-10-28
    Go语言 redis 团队协作工具
  • Go语言中io/ioutil工具如何使用
    今天小编给大家分享一下Go语言中io/ioutil工具如何使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。读取文件读取文件...
    99+
    2023-06-30
  • 详解Go语言中io/ioutil工具的使用
    目录读取文件写文件读取文件夹下所有文件信息创建临时文件和临时文件夹拷贝文件小结学习笔记,写到哪是哪。 接着上一篇,我们看看io/ioutil工具如何使用,简化文件操作。 读取文件 读...
    99+
    2022-11-13
  • 怎么使用Go语言实现Ping工具
    这篇文章主要讲解了“怎么使用Go语言实现Ping工具”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用Go语言实现Ping工具”吧!Ping是一种众所周知的网络诊断工具,它通过向目标服务...
    99+
    2023-07-06
  • 如何使用Go语言开发微服务?
    伴随着云计算、容器技术、大数据等新兴技术的不断涌现,微服务架构因为其高度可扩展性、灵活性等特点,越来越受到人们的青睐。在微服务架构中,每个服务都是一个独立的进程,每个进程都有自己的数据存储方式,操作系统环境等等。微服务通过通信协议(如HTT...
    99+
    2023-05-16
    Go语言 微服务 开发
  • Go语言开发工具集合,助您更快更好地开发大数据应用
    随着数据的爆炸式增长,大数据应用的需求也越来越多。而Go语言作为一门快速、高效的编程语言,越来越受到开发者的青睐。本文将介绍一些常用的Go语言开发工具,以帮助您更快更好地开发大数据应用。 Go语言编译器和运行时 在开始使用Go语言开发...
    99+
    2023-08-17
    大数据 开发技术 http
  • 如何在Linux环境下利用GO语言开发高效文件管理工具?
    在Linux环境下,文件管理工具是必不可少的,而GO语言的高效性能和强大的并发处理能力,使它成为开发高效文件管理工具的理想语言。在本文中,我们将介绍如何利用GO语言开发一个高效的文件管理工具。 第一步:安装GO语言环境 在开始开发之前,我们...
    99+
    2023-10-02
    开发技术 linux 文件
  • Linux常用的C语言开发工具是什么
    这篇文章主要介绍“Linux常用的C语言开发工具是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Linux常用的C语言开发工具是什么”文章能帮助大家解决问题。linux下的C语言开发(makef...
    99+
    2023-06-28
  • 如何使用Go语言开发点餐系统的员工管理功能
    随着互联网技术的发展,许多传统餐厅也开始向数字化转型,其中点餐系统成为了餐厅数字化的重要组成部分。在点餐系统中,员工管理功能是不可或缺的一部分,它可以帮助餐厅管理员更好地管理员工信息、考勤记录和工作分配等。本文将介绍如何使用Go语言开发点餐...
    99+
    2023-11-01
    Go语言开发 员工管理 点餐系统
  • Linux上的Go语言,Spring和Laravel:如何选择最适合你的Web开发工具?
    随着Web开发的不断发展,越来越多的开发人员开始寻找最适合他们的工具。而在选择Web开发工具时,Linux上的Go语言、Spring和Laravel都是非常受欢迎的选择。 那么,如何选择最适合你的Web开发工具?本文将为你介绍Linux上的...
    99+
    2023-10-08
    linux spring laravel
  • Go语言包管理工具Godep的用法
    一、为什么要包管理 默认Go的第三方包都是放在Gopath的src目录下,而且这些包都没有版本号的概念,这样的可能会出现一些问题。 举个例子:当A同事将开发完程序之后,此时可能引用了...
    99+
    2022-11-11
  • 如何使用Go语言开发Websocket聊天室
    如何使用Go语言开发Websocket聊天室Websocket是一种实时通信协议,通过建立一次连接,可以在服务器和客户端之间进行双向通信。在开发聊天室时,Websocket是一个非常好的选择,因为它可以实现实时消息交流,并且能够提供高效的性...
    99+
    2023-12-14
    Go语言 websocket 聊天室
  • Go 语言的 :=的具体使用
    目录1. 单变量 :=2. 多变量 :=3. 小结:=   Go 语言中 = 和 := 有什么区别1. 单变量 := Go 语言中新增了一个特殊的运算符:=,这个运算符可以使...
    99+
    2022-06-07
    GO
  • 如何使用Go语言开发Websocket应用程序
    使用Go语言开发Websocket应用程序Websocket是一种支持全双工通信的网络协议,它允许服务器主动向客户端发送数据,而不需要客户端先发起请求。Go语言对Websocket的支持非常完善,提供了一个标准库"net/http"中的"g...
    99+
    2023-12-14
    开发 Go语言 websocket
  • 如何使用Go语言开发具有NumPy和Git接口的高性能应用?
    Go语言是一门非常流行的编程语言,其强大的性能和丰富的库让它成为了很多开发者的首选。在本文中,我们将探讨如何使用Go语言开发具有NumPy和Git接口的高性能应用。 一、NumPy NumPy是一种基于Python语言的科学计算库,它可以让...
    99+
    2023-07-01
    numy git 接口
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作