go-jwt jwt go

Go语言基础之error接口

Go 语言中的错误处理与其他语言不太一样,它把错误当成一种值来处理,更强调判断错误、处理错误,而不是一股脑的 catch 捕获异常。 Error接口和错误处理 Error 接口 Go 语言中把错误当成一种特殊的值来处理,不支持其他语言中使用try/catch捕获异常的方式。 Error 接口 Go ......
语言基础 接口 语言 基础 error

Go语言标准库flag基本使用

Go语言内置的flag包实现了命令行参数的解析,flag包使得开发命令行工具更为简单。 os.Args 如果你只是简单的想要获取命令行参数,可以像下面的代码示例一样使用os.Args来获取命令行参数。 package main import ( "fmt" "os" ) //os.Args demo ......
语言 标准 flag

10Go语言基础之指针

区别于C/C++中的指针,Go语言中的指针不能进行偏移和运算,是安全指针。 要搞明白Go语言中的指针需要先知道3个概念:指针地址、指针类型和指针取值。 Go语言中的指针 任何程序数据载入内存后,在内存都有他们的地址,这就是指针。而为了保存一个数据在内存中的地址,我们就需要指针变量。 比如,“永远不要 ......
语言基础 指针 语言 基础 10

06Go语言基础之数组

本文主要介绍Go语言中数组(array)及它的基本使用。 Array(数组) 数组是同一种数据类型元素的集合。 在Go语言中,数组从声明时就确定,使用时可以修改数组成员,但是数组大小不可变化。 基本语法: // 定义一个长度为3元素类型为int的数组a var a [3]int 数组定义: var ......
语言基础 数组 语言 基础 06

07Go语言基础之切片

本文主要介绍Go语言中切片(slice)及它的基本使用。 引子 因为数组的长度是固定的并且数组长度属于类型的一部分,所以数组有很多的局限性。 例如: func arraySum(x [3]int) int{ sum := 0 for _, v := range x{ sum = sum + v } ......
语言基础 语言 基础 07 Go

05Go语言基础之流程控制

流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”。 Go语言中最常用的流程控制有if和for,而switch和goto主要是为了简化代码、降低重复代码而生的结构,属于扩展类的流程控制。 if else(分支结构) if条件判断基本写法 Go语言中if条件判断 ......
语言基础 语言 基础 05 Go

04Go语言基础之运算符

运算符用于在程序运行时执行数学或逻辑运算。 运算符 Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 算术运算符 运算符 描述 + 相加 - 相减 * 相乘 / 相除 % 求余 注意: ++(自增)和--(自减)在Go语言中是单独的语句,并不是运算符。 关系运算符 ......
语言基础 运算符 语言 基础 04

4如何使用go module导入本地包

go module是Go1.11版本之后官方推出的版本管理工具,并且从Go1.13版本开始,go module将是Go语言默认的依赖管理工具。到今天Go1.14版本推出之后Go modules 功能已经被正式推荐在生产环境下使用了。 这几天已经有很多教程讲解如何使用go module,以及如何使用g ......
module

02Go语言基础之变量和常量

变量和常量是编程中必不可少的部分,也是很好理解的一部分。 标识符与关键字 标识符 在编程语言中标识符就是程序员定义的具有特殊意义的词,比如变量名、常量名、函数名等等。 Go语言中标识符由字母数字和_(下划线)组成,并且只能以字母和_开头。 举几个例子:abc, _, _123, a123。 关键字 ......
语言基础 常量 变量 语言 基础

03Go语言基础之基本数据类型

Go语言中有丰富的数据类型,除了基本的整型、浮点型、布尔型、字符串外,还有数组、切片、结构体、函数、map、通道(channel)等。Go 语言的基本类型和其他语言大同小异。 基本数据类型 整型 整型分为以下两个大类: 按长度分为:int8、int16、int32、int64 对应的无符号整型:ui ......
语言基础 语言 类型 基础 数据

1从零开始搭建Go语言开发环境

Go1.14版本,一步一步,从零搭建Go语言开发环境。 因为Go语言及相关编辑工具的更新迭代,本文已于2021/05/12更新,可能会和视频有所出入,请以更新后的本文为准。 安装Go语言及搭建Go语言开发环境 注意:Go语言1.14版本之后推荐使用go modules管理依赖,也不再需要把代码写在G ......
语言 环境

2VS Code配置Go语言开发环境

VS Code是微软开源的一款编辑器,插件系统十分的丰富。本文就介绍了如何使用VS Code搭建Go语言开发环境。 因为Go语言及相关编辑工具的更新迭代,本文已于2020/03/25更新,可能会和视频有所出入,请以更新后的本文为准。 VS Code配置Go语言开发环境 说在前面的话,Go语言是采用U ......
语言 环境 Code 2VS VS

0为什么你应该学习Go语言

终于等到你!Go语言——让你用写Python代码的开发效率编写C语言代码。 为什么互联网世界需要Go语言 世界上已经有太多太多的编程语言了,为什么又出来一个Go语言? 硬件限制:摩尔定律已然失效 摩尔定律:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一 ......
语言

go项目

利用gin写一个blog(后端部分) 主框架:gin 数据库:gorm v1 前端:vue 数据加载框架:ini 加密:scrypt 总的来说gin框架是很好用的,我学的是gorm的v1版,在使用的时候感觉v1版确实不好用,另外实在vscode上开发的调试是真的麻烦,后面打算在ied上写,此外这个项 ......
项目

go学习

go学习 go的变量声明 var 变量名 type go语言中的变量是需要声明之后才能使用,同一作用域内不支持重复声明,并且go语言的变量声明后必须使用 批量声明: var( name string age int b bool ) 类型推断 var name="zhangsan" 批量初始化: v ......

Go定时任务实现

定时任务调度是常见的场景,从简单点本地任务调度,到分布式定时任务调度,被广泛的使用。本文汇总了 awesome-go 里全部的本地定时任务库,并横向对比其实现原理,以及使用场景和优缺点,欢迎收藏随时参考。 本文收纳的本地定时任务库如下: onatm/clockwerk withself/clockw ......
任务

Go--cron定时任务

Cron是Go中用于设置定时任务的一个库,需要注意的是,Cron库分两个大版本,v1.2和v3.0,其功能和go get地址都是不同的,注意区分。 v1.2官方文档:https://pkg.go.dev/github.com/robfig/cron v3官方文档:https://pkg.go.dev ......
任务 cron Go

分享一个项目:`learning_go_plan9_assembly`, 学习 golang plan9 汇编

作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 近期在学习 golang plan9 汇编,总算基本做到了手写汇编,并整理了很多笔记。 plan9 汇编的资料少,难学,难用。可能也有想学习汇编的人会遇到与我 ......

axum 集成 JWT

Json web token(JWT)是为了网络应用环境间传递声明而执行的一种基于 JSON 的开发标准(RFC 7519),该 token 被设计为紧凑且安全的,特别适用于分布式站点的单点登陆(SSO)场景。JWT 的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服 ......
axum JWT

Go语言基准测试(benchmark)三部曲之二:内存篇

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是《Go语言基准测试(benchmark)三部曲》的第二篇,目标是掌握如何用基准测试来观察被测方法的内存分配情况 今天除了常规的操作,即指定 ......
三部曲 基准 benchmark 内存 语言

go中的内存逃逸

内存逃逸(memory escape)是指在编写 Go 代码时,某些变量或数据的生命周期超出了其原始作用域的情况。当变量逃逸到函数外部或持续存在于堆上时,会导致内存分配的开销,从而对程序的性能产生负面影响。Go 编译器会进行逃逸分析,以确定哪些变量需要在堆上分配内存。下面将详细分析 Go 语言中的内 ......
内存

⭐ go gorm 映射框架 好用到爆炸!!!

使用 Goland ide 插件搜索Gorm 直接安装 连接数据库并且选择表,鼠标右键gorm 之后按照你的项目要求生成crud直接快人一步释放双手啦 ......
框架 gorm go

jwt生成token及拦截器解析token

添加依赖 <!--jwt加密--> <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>3.10.3</version> </dependency> <dependency> <gr ......
token jwt

【go】go面试题

1.json包在使用的时候,结构体里的变量不加tag能不能正常转成json里的字段? 如果变量首字母小写,则为private。无论如何不能转,因为取不到反射信息。 如果变量首字母大写,则为public。 不加tag,可以正常转为json里的字段,json内字段名跟结构体内字段原名一致。 加了tag, ......

2023-11-01:用go语言,沿街有一排连续的房屋。每间房屋内都藏有一定的现金, 现在有一位小偷计划从这些房屋中窃取现金, 由于相邻的房屋装有相互连通的防盗系统,所以小偷 不会窃取相邻的房屋, 小

2023-11-01:用go语言,沿街有一排连续的房屋。每间房屋内都藏有一定的现金, 现在有一位小偷计划从这些房屋中窃取现金, 由于相邻的房屋装有相互连通的防盗系统,所以小偷 不会窃取相邻的房屋, 小偷的 窃取能力 定义为他在窃取过程中能从单间房屋中窃取的 最大金额, 给你一个整数数组 nums 表 ......
房屋 小偷 现金 防盗系统 语言

Go 进阶训练营对标字节跳动2-2级能力模型,实践驱动掌握云计算第一语言

最近整理了下收集的Go学习资料,包含了Go学习社区、入门、进阶、性能优化、面试和Go学习书籍,还是比较全面的,在这里推荐给大家。 废话不多说,先献上Go技能升级地图,自己照着地图修炼 Go学习社区 Golang 中国:国内较早的 Go 社区,汇聚各类信息与服务 Learn Go:比较好的Golang ......
训练营 字节 模型 能力 Go

Go开发工程师入门到项目实战 Google架构师联合大厂架构师出品

01 | Go语言课程介绍 蔡超Mobvista技术副总裁兼首席架构师,前亚马逊(中国)首席软件架构师 本节内容 你好,我是蔡超,目前在 Mobvista 担任技术副总裁兼首席架构师。在加入 Mobvista 前,我也曾在亚马逊,惠普等公司担任过首席软件架构师。 我是从小学四年级开始学习计算机编程的 ......
架构 实战 工程师 项目 Google

Go语言从入门到实战简明高效率的go语言实战指南

Go 语言是一门新生语言,从其出现就备受大家的喜爱。本章会带领读者领略 Go 语言的特性,介绍 Go 语言在国内外公司及项目的应用情况,同时让读者了解这门强大语言背后的三位缔造者及团队成员。 为了方便读者跟着本教程的步骤进行操作和实践,本章还会介绍如何搭建 Go 语言的开发环境。 Go语言简介 Go ......
实战 语言 高效率 指南

Go开发学习 | 如何快速读取json/yaml/ini等格式的配置文件使用示例

0x00 前言简述 0x01 常用模块 encoding/json 模块 - json 配置文件解析 gopkg.in/ini.v1 模块 - ini 配置文件解析 gopkg.in/yaml.v3 模块 - yaml 配置文件解析 spf13/viper 模块 - 配置文件解析终结者 原生map结 ......
示例 格式 文件 json yaml