一文教你如何优雅处理Golang中的异常

我们在使用Golang时,不可避免会遇到异常情况的处理,与Java、Python等语言不同的是,Go中并没有try...catch...这样的语句块,我们知道在Java中使用try...catch...这种模式不仅能分...

go code review 代码调试

目录ExamplesGoroutine LifetimesHandle ErrorsimportImport BlankImport DotIn-Band ErrorsIndent Error FlowInitialismsInterfacesLine LengthNamed Result ParametersNa...

Go语言常用的打log方式详解

文章介绍了3种常用的打log的方式,并赋上了注解先写上注意事项,三种方法建议分开测,因为可能在第一种的Fatal会终止运行,Fatal和Panic和Print的区别在于,Fatal会保存日志并终止...

golang xorm 自定义日志记录器之使用zap实现日志输出、切割日志(最新)

目录1.准备并下载好需要的包2. 连接postgresql数据库3. zap日志工具4.实现xorm 自定义日志记录器5.使用完整代码参考文档1.准备并下载好需要的包xorm.io/xorm xorm.io/core...

Go疑难杂症讲解之为什么nil不等于nil

目录现象寻找原因总结现象在日常开发中,可能一不小心就会掉进 Go 语言的某些陷阱里,而本文要介绍的 nil ≠ nil 问题,便是其中一个,初看起来会让人觉得很诡异,摸不着头脑。先来...

Golang中的godoc使用简介(推荐)

目录go doc简介Golang中的godoc使用简介go doc约定规则使用命令go doc简介Godoc是go语言的文档化工具,类似于文档化工具godoc,类似于Python的Docstring和Java的Javadoc
Godoc...

Go 语言单例模式示例详解

目录简单单例模式加锁的单例模式双check 的单例模式sync.Once 的单例模式简单单例模式单例模式是创建类型的模式,它是为了保证执行期间内只有一个实例。使用 Golang 指针可以...

一篇文章读懂Golang init函数执行顺序

目录1.init 函数简介2.执行顺序2.1 单个源文件的 init 执行顺序2.2 单个包的 init 执行顺序2.3 main 包导入多个包时 init 执行顺序2.3.1 不存在依赖2.3.2 存在依赖2.4 包级...

浅析Go语言容器之数组和切片的使用

目录序列容器数组VectorDequeList单链表总结在 Java 的核心库中,集合框架可谓鼎鼎大名:Array 、List、Set、Queue、HashMap 等等,随便拎一个出来都值得开发者好好学习如何使用...

详解Go语言中切片的长度与容量的区别

目录切片的声明切片的长度和容量切片追加元素后长度和容量的变化append 函数切片的源代码学习切片的结构体切片的扩容总结切片的声明切片可以看成是数组的引用(实际上切片的...

golang MySQL实现对数据库表存储获取操作示例

目录新建数据库config.gogameblog.gohttpSimplify server.gocomment.gogameblog.goserver.gopostman test apiAxiosgamelist.goHTTPgamelist.goserver.goAxios新建数据库 将...

GoLang channel底层代码分析详解

目录1. channel 底层结构2. channel 的创建3. channel 的发送流程4. channel 的接收流程5. channel 使用注意事项以下源码都摘自 golang 1.16.15 版本。1. channel 底层结构...

Go语言中基本数据类型的相互转换详解

目录基本数据类型的相互转换基本语法小知识基本数据类型和string的转换方法一方法二string和基本数据类型转换基本数据类型的相互转换Go在不同类型的变量之间赋值时需要显示...

Go语言中go mod vendor使用方法

目录1.背景2.环境3.使用4.原理5.参考1.背景我们基于 go mod 机制来管理我们项目的依赖库版本,其中 go.mod 记录了依赖库版本信息。一般第三方依赖库(包括公司内网gitlab上的依...

Golang中Gin框架的使用入门教程

目录安装与简单测试常见请求与分组请求获取参数 与 参数合法性验证获得query中参数获得multipart/urlencoded form中的参数模型绑定和参数验证自定义参数验证项目结构参考Gi...

解析Golang中的锁竞争问题

当我们打印错误的时候使用锁可能会带来意想不到的结果。我们看下面的例子:package mainimport ( "fmt" "sync")type Courseware struct { mutex sync.RWMutex Id int64 Co...

Golang检查变量类型的四种方式

目录%T 格式化标识使用reflect包函数reflect.TypeOf()reflect.ValueOf().Kind()使用类型断言自定义方法检查类型Go提供几种方法检查变量的类型,在字符串格式化标识%T, 反射方...

详解Go 依赖管理 go mod tidy

目录前言Debug准备源码的位置debug 配置文件dlv启动执行过程加载go.mod文件加载依赖更新go.mod文件前言go mod tidy的作用是把项目所需要的依赖添加到go.mod,并删除go.mod中,...

Go reflect 反射原理示例详解

目录开始之前分析从何处获取类型信息如何实现赋值操作?总结开始之前在开始分析原理之前,有必要问一下自己一个问题:反射是什么?以及其作用是什么?不论在哪种语言中,我们所提到...

Go语言中调用外部命令的方法总结

目录引子运行命令显示输出显示到标准输出输出到文件发送到网络保存到内存对象中输出到多个目的地运行命令,获取输出分别获取标准输出和标准错误标准输入环境变量检查命令是否...

Golang打印复杂结构体两种方法详解

目录fmt结构体占位符打印复杂结构体方案一方案二fmt结构体占位符在Golang中有原生的 fmt 格式化工具去打印结构体,可以通过占位符%v、%+v、%#v去实现,这3种的区别如下所示:type...

Go初学者踩坑之go mod init与自定义包的使用

目录前言首先看一下 文档结构问题是:怎么引用它下面直接给出解决方案吧补充:go mod init出错总结前言入门很容易的 hello world, 到使用自定义包算一个小的进步,然而在使用上...

一文彻底理解Golang闭包实现原理

目录前言函数一等公民作用域实现闭包闭包扫描闭包赋值闭包函数调用函数式编程总结前言闭包对于一个长期写 Java 的开发者来说估计鲜有耳闻,我在写 Python 和 Go 之前也是没怎...

Go语言实战之实现一个简单分布式系统

目录引子思路实战节点通信主节点工作节点将它们放在一起代码效果总结引子如今很多云原生系统、分布式系统,例如 Kubernetes,都是用 Go 语言写的,这是因为 Go 语言天然支持异步...

go语言csrf库使用实现原理示例解析

目录引言csrf小档案一、CSRF及其实现原理CSRF攻击示例二、如何预防三、CSRF包的使用及实现原理csrf包的安装基本使用使用net/http包启动的服务echo框架下使用csrf包gin框架...

go语言日志实现详解(打印日志、日志写入文件和日志切割)

目录Go语言内置的log包实现了简单的日志服务Logger标准logger的配置配置日志前缀(SetPrefix)配置日志输出位置创建新logger对象日志库级别runtime.Caller可变参数的日志实现往...

详解Golang中gcache模块的基本使用

目录先说结论优势基本使用打印结果缓存控制打印结果缓存淘汰策略实战举例代码示例打印结果小技巧GetOrSetFunc的使用总结gcache提供统一的缓存管理模块,提供了开发者可自定义...

Go方法接收者值接收者与指针接收者详解

目录引言联系与区别指针类型调用结果实现接口时约束该怎么用引言在review 一些代码中,发现经常某个类型定义的方法,其接收者既有值类型,又有指针类型,然后 Goland 就有提示: Stru...

深入理解Golang channel的应用

目录前言整体结构创建发送接收关闭前言channel是用于 goroutine 之间的同步、通信的数据结构channel 的底层是通过 mutex 来控制并发的,但它为程序员提供了更高一层次的抽象,...

Golang 编写Tcp服务器的解决方案

目录Echo 服务器拆包与粘包问题优雅关闭Golang 开发 Tcp 服务器及拆包粘包、优雅关闭的解决方案Golang 作为广泛用于服务端和云计算领域的编程语言,tcp socket 是其中至关重...

Golang基于sync.Once实现单例的操作代码

目录基于sync.Once实现单例单例类型定义Driver类Field connonce.Do(func() {})并发访问once.Do()对外暴露方法Conn()重新new(Driver)会发生什么?在go里实现单例模式有多种方...

.Net Core以windows服务方式部署

前言netcore用了这么久,虽然多数都是部署在centos系统,但也有部署在windows上的情况。最省力的部署方式是发布后直接在发布目录打开cmd,运行dotnet命令。虽然很省力,但是保留一...

2023-01-01

C#循环与循环控制的表达式树实现

C# 提供了以下几种循环类型。循环类型描述while 循环当给定条件为真时,重复语句或语句组。它会在执行循环主体之前测试条件。for/foreach 循环多次执行一个语句序列,简化管理...

2023-01-01

C#实现单位换算器

本文实例为大家分享了C#实现单位换算器的具体代码,供大家参考,具体内容如下一、阐述进制间转换:十六进制、十进制、八进制、二进制。
长度间转换:毫米、厘米、米、公里、英寸、...

2023-01-01

C#中逆变的实际应用场景详解

目录前言协变的应用场景逆变的应用场景讨论总结前言早期在学习泛型的协变与逆变时,网上的文章讲解、例子算是能看懂,但关于逆变的具体应用场景这方面的知识,我并没有深刻的认识...

2023-01-01

详解C#如何实现读写ini文件

目录介绍1.创建一个ini文件2.创建一个winform界面3.添加一个ini管理类4.添加winform代码介绍INI文件格式由节、键、值组成。节[section]参数(键=值)name=value1.创建一个ini文...

2023-01-01

C#中的out参数、ref参数和params可变参数用法介绍

out参数:out关键字 通过引用来传递参数,在定义方法和调用方法的时候都必须使用out关键字简单来讲out可以用来返回多个参数类型。 static void Main(string[] args)...

2023-01-01

C#值类型、引用类型、泛型、集合、调用函数的表达式树实践

目录一,定义变量二,访问变量/类型的属性字段和方法1. 访问属性调用静态类型属性调用实例属性/字段2. 调用函数调用静态类型的函数调用实例的函数三,实例化引用类型new给属性赋...

2023-01-01

C#实现温度转换功能

本文实例为大家分享了C#实现温度转换功能的具体代码,供大家参考,具体内容如下界面图代码using System;using System.Collections.Generic;using System.ComponentModel;using...

2023-01-01

C#实现在PDF文档中应用多种不同字体

目录引入dll应用字体C#VB.NET绘制效果引入dll 本次程序中引入的是Spire.Pdf.dll,引入方法如下:【方法1】通过NuGet安装。可以在Visual Studio中打开“解决方案资源管理器...

2023-01-01

C#操作SQLite实现数据的增删改查

目录简介主要代码SQLiteHelper.csUsingLock.csForm1.cs简介SQLite是一个轻量级、跨平台的关系型数据库,在小型项目中,方便,易用,同时支持多种开发语言,下面是我用C#语言对SQLite...

2023-01-01

C#算法之整数反转

题目给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321 示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们...

2023-01-01

C#数据类型转换(显式转型、隐式转型、强制转型)

C# 的类型转换有显式转型 和 隐式转型 两种方式。显式转型:有可能引发异常、精确度丢失及其他问题的转换方式。需要使用手段进行转换操作。隐式转型:不会改变原有数据精确度、...

2023-01-01

C#算法之回文数

回文数判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为...

2023-01-01

C#表达式树基础教程

什么是表达式树来自微软官方文档的定义:表达式树以树形数据结构表示代码。它能干什么呢?你可以对表达式树中的代码进行编辑和运算。 这样能够动态修改可执行代码、在不同数据...

2023-01-01

WCF基础介绍并创建简单应用程序

什么是WCF?WCF, 英文全称(windows Communication Foundation) , 即为windows通讯平台。windows想到这里大家都知道了 , WCF也正是由微软公司推出的这个一个玩意, 基于SOA的一...

2023-01-01

C#跨平台开发之使用C/C++生成的动态链接库

操作环境:Visual Studio 2017如何实现 使用 C# 进行嵌入式开发?.NET Core 虽然实现了跨平台,但是不可能处处使用 C# 开发,就好像没人使用SQL开发安卓APP,每种语言都有其优秀的地...

2023-01-01

C#五类运算符使用表达式树进行操作

在 C# 中,算术运算符,有以下类型算术运算符关系运算符逻辑运算符位运算符赋值运算符其他运算符这些运算符根据参数的多少,可以分作一元运算符、二元运算符、三元运算符。本文将...

2023-01-01

C#通过标签软件Bartender的ZPL命令打印条码

注:由于工作需要, 也是第一次接触到打印机的相关内容, 凑巧, 通过找了很多资料和帮助后, 也顺利的解决了打印标签的问题(标签的表面信息[二维码,条形码, 文字] 和 RFID标签...

2023-01-01

C#基于Sockets类实现TCP通讯

本文实例为大家分享了C#基于Sockets类实现TCP通讯的具体代码,供大家参考,具体内容如下最终效果TCPClientusing System;using System.Collections.Generic;using System.Compon...

2023-01-01
返回顶部
顶部