E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
golangsocket编程
【设计模式】创建型模式之单例模式(
Golang
实现)
定义一个类只允许创建一个对象或实例,而且自行实例化并向整个系统提供该实例,这个类就是一个单例类,它提供全局访问的方法。这种设计模式叫单例设计模式,简称单例模式。单例模式的要点:某个类只能有一个实例必须自行创建该实例必须自行向整个系统提供该实例时序图:用处从业务概念上来看,有些数据在系统中只应该保留一份,就比较适合设计为单例类。比如,系统的配置信息。使用场景:系统只需要一个实例对象,比如唯一的序列号
豆沙睡不醒
·
2024-01-11 09:33
设计模式
设计模式
单例模式
golang
Golang
实现Kafka消息发送、接收
一:核心概念kafka是消息中间件的一种,是一种分布式流平台,是用于构建实时数据管道和流应用程序。具有横向扩展,容错,wickedfast(变态快)等优点。kafka中涉及的名词:消息记录(record):由一个key,一个value和一个时间戳构成,消息最终存储在主题下的分区中,记录在生产者中称为生产者记录(ProducerRecord),在消费者中称为消费者记录(ConsumerRecord)
姚文08
·
2024-01-11 08:21
Golang
kafka
golang
kafka
队列
大数据
不背锅运维:消息队列概念、kafka入门、Kafka
Golang
客户端库
消息队列是什么消息队列是一种在应用程序之间进行通信的技术,允许将消息从一个应用程序发送到另一个应用程序,而无需明确的连接这些应用程序。消息队列中的消息被存储在一种称为队列的数据结构中,这些消息在队列中保留,直到被消费者接收。这使得消息的发送者和接收者能够异步地通信,而不必等待对方的响应,从而提高了系统的可伸缩性和弹性。消息队列还可以通过实现各种模式(例如发布/订阅模式、请求/响应模式等)来支持不同
不背锅运维
·
2024-01-11 08:46
kafka
运维
java
28.windows安装kafka,Go操作kafka示例(sarama库)
kafka1.创建topic2.创建生产者生产数据3.创建消费者消费数据4.演示发送和接收六:Go操作kafka1.生产消息2.消费消息代码地址:https://gitee.com/lymgoforIT/
golang
-trick
百里守约学编程
·
2024-01-11 08:11
go
windows
kafka
golang
golang
一个轻量级基于内存的kv存储或缓存
golang
一个轻量级基于内存的kv存储或缓存go-cache是一个轻量级的基于内存的key:value储存组件,类似于memcached,适用于在单机上运行的应用程序。
beyond阿亮
·
2024-01-11 08:00
golang
golang
缓存
开发语言
GoLang
:sql.Exec()报错
【报错内容】Sorry,cannotexecintomysql:Error1064(42000):YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear...【原因】sql.Exec在大多数情况下只能执行单条SQL语句。如果您的SQL脚
星宇星静
·
2024-01-11 06:04
mysql
数据库
golang
sql
go
GoLang
刷题之leetcode
题目35:搜索插入位置题目描述:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为O(logn)的算法。题解:funcsearchInsert(nums[]int,targetint)int{iftarget>nums[len(nums)-1]{returnlen(nums)}iftargettarget{
牛保实
·
2024-01-11 02:37
leetcode
算法
数据结构
GoLang
刷题之leetcode
题目34:在排序数组中查找元素的第一个和最后一个位置题目描述:给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值target,返回[-1,-1]。你必须设计并实现时间复杂度为O(logn)的算法解决此问题题解:funcsearchRange(nums[]int,targetint)[]int{l,r:=0,
牛保实
·
2024-01-11 02:07
leetcode
算法
数据结构
GoLang
刷题之leetcode
题目33:搜索旋转排序数组题目描述:整数数组nums按升序排列,数组中的值互不相同。在传递给函数之前,nums在预先未知的某个下标k(0target{r=mid-1}else{l=mid+1}}ifnums[r]>=nums[mid]{ifnums[r]>=target&&nums[mid]<target{l=mid+1}else{r=mid-1}}}return-1}
牛保实
·
2024-01-11 02:06
leetcode
算法
数据结构
GoLang
刷题之leetcode
题目36:有效的数独题目描述:请你判断一个9x9的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。(请参考示例图)题解:funcisValidSudoku(board[][]byte)bool{varrows,cols,boxes[9][9]intfori,ro
牛保实
·
2024-01-11 02:34
golang
leetcode
算法
dubbo的springboot集成
ApacheDubbo是一款RPC服务开发框架,用于解决微服务架构下的服务治理与通信问题,官方提供了Java、
Golang
等多语言SDK实现。
昵称无限重复
·
2024-01-11 02:50
微服务
dubbo
spring
boot
后端
golang
学习-切片
1、切片定义切片:是一个拥有相同类型元素的可变长度的序列。它是基于数组类型做的一层封装。和数组比较来说,非常灵活,支持自动扩容。切片是引用类型。切片只是定义没有扩容,默认值是nil。切片包含三个信息:底层数组的指针、切片的长度(len)、切片的容量(cap)funcmain(){//切片声明//第一种方法vararr1[]intfmt.Print(arr1)//第二种方法vararr2=[]int
蛋蛋wqt
·
2024-01-11 01:49
golang学习
学习
golang
学习-map
1、map定义一种无序的基于key-value的数据结构,是引用类型,必须初始化才能使用。默认初始值是nil。2、map声明funcmain(){//map定义第一种写法make()userInfo:=make(map[string]string)userInfo["age"]="20"fmt.Println(userInfo)//第二种写法在声明的时候填充元素userInfo=map[strin
蛋蛋wqt
·
2024-01-11 01:49
golang学习
golang
学习
开发语言
golang
学习-匿名函数和闭包
1、匿名函数没有函数名的函数,格式如下:func(参数)返回值{函数体}funcmain(){//将匿名函数保存到变量中sum:=func(x,yint)int{returnx+y}fmt.Println(sum(10,20))//通过变量调用匿名函数//自执行函数:匿名函数定义完加()直接执行func(x,yint){fmt.Println(x,y)}(10,20)}2、闭包全局变量的特点:常驻
蛋蛋wqt
·
2024-01-11 01:49
golang学习
golang
学习
开发语言
golang
学习-流程控制
ifelse建议条件不用()包裹,if{}不能省略,{}中的{必须紧靠着条件go语言中没有while循环,可以通过for代替age:=30ifage>18{fmt.Println("我是大人")}//另一种写法ifage:=99;age>18{fmt.Printf("年龄是%v",age)fmt.Println("我是大人1")}/*上面两种写法的区别第一种写法age是全局变量第二种是局部变量只能
蛋蛋wqt
·
2024-01-11 01:18
golang学习
golang
学习
开发语言
golang
并发安全-select
前面说了
golang
的channel,今天我们看看
golang
select是怎么实现的。
木子林_
·
2024-01-11 01:04
golang
开发语言
后端
golang
实现常见排序算法
冒泡排序packagemainimport"fmt"import"
golang
.org/x/exp/constraints"funcmain(){testArray:=make([]int,0,10)testArray
拥
·
2024-01-11 00:28
golang
算法
golang
排序算法
算法
golang
实现二分查找(递归、非递归、变体等4个版本)
packagemainimport("fmt""sort")funcmain(){testArray:=[]int{3,1,2,6,4,5,7,8,10}sort.Ints(testArray)fmt.Printf("数组为%+v\n",testArray)searchData:=9check:=binarySearchV2(testArray,9,0,len(testArray)-1)fmt.P
拥
·
2024-01-11 00:57
golang
算法
golang
c++
算法
golang
实现skiplist 跳表
跳表packagemainimport("errors""math""math/rand")funcmain(){//双向链表///**先理解查找过程Level3:16Level2:136Level1:12346比如查找2;从高层往下找;如果查找的值比当前值小说明没有可查找的值2比1大往当前层的下个节点查找,3层的后面没有了或者比后面的6小,往下层找2层查找值比下个节点3还小往下层找最后一层找到比
拥
·
2024-01-11 00:26
golang
算法
golang
skiplist
开发语言
Golang
中哪些类型可以作为 map 类型的 key?
目录可以作为map键的类型不能作为map键的类型最佳实践小结在Go语言中,map是一种内置的关联数据结构类型,由一组无序的键值对组成,每个键都是唯一的,并与一个对应的值相关联。本文将详细介绍哪些类型的变量可以作为map的键,并通过实例进行说明。可以作为map键的类型因为map需要能够判断两个键是否相等以确保每个键的唯一性,所以并非所有类型都可以作为map的键,可以作为map键的数据类型必须满足以下
路多辛
·
2024-01-10 23:22
Golang系列知识讲解
golang
开发语言
后端
MinIO学习笔记
由于采用
Golang
实现,服务端可以工作在Windows,Linux,OSX和FreeBSD上。配置简单,基本是复制可执行程序,单行命令可以运行起来。
一码一上午
·
2024-01-10 23:41
微服务
spring
boot
【GoLand】go语言入门常见报错——Get “https://proxy.
golang
.org/github.com/gin-contrib/sessions/@v/v0.0.3.mod“
问题描述go语言编译后控制台报错go:github.com/gin-contrib/
[email protected]
:Get"https://proxy.
golang
.org/github.com/gin-contrib
yuzhangfeng
·
2024-01-10 22:22
go语言
golang
开发语言
后端
go
50天精通
Golang
(第11天)
错误处理在实际工程项目中,我们希望通过程序的错误信息快速定位问题,但是又不喜欢错误处理代码写的冗余而又啰嗦。Go语言没有提供像Java、C#语言中的try...catch异常处理方式,而是通过函数返回值逐层往上抛。这种设计,鼓励工程师在代码中显式的检查错误,而非忽略错误,好处就是避免漏掉本应处理的错误。但是带来一个弊端,让代码啰嗦。1.1什么是错误错误是什么?错误指的是可能出现问题的地方出现了问题
恶灵退却
·
2024-01-10 21:30
50天精通golang
golang
xcode
ios
50天精通
Golang
(第10天)
type关键字type是go语法里的重要而且常用的关键字,type绝不只是对应于C/C++中的typedef。搞清楚type的使用,就容易理解go语言中的核心概念struct、interface、函数等的使用。一、类型定义1.1定义结构体使用type可以定义结构体类型://1、定义结构体//结构体定义typepersonstruct{namestring//注意后面不能有逗号ageint}1.2定
恶灵退却
·
2024-01-10 21:30
50天精通golang
golang
开发语言
后端
50天精通
Golang
(第5天)
一、字符串(string)1.1什么时stringGo中的字符串时一个字节的切片。可以通过将其内容封装在""中来创建字符串。Go中的字符串是Unicode兼容的,并且是UTF-8编码的。示例代码:packagemainimport("fmt")funcmain(){name:="HelloWorld"fmt.Println(name)}1.2string的使用1.2.1访问字符串中的单个字节pac
恶灵退却
·
2024-01-10 21:00
50天精通golang
golang
59天精通
Golang
(第8天)
接口1.1什么是接口面向对象世界中的接口的一般定义是“接口定义对象的行为”。它表示让指定对象应该做什么。实现这种行为的方法(实现细节)是针对对象的。在Go中,接口是一组方法签名。当类型为接口中的所有方法提供定义时,它被称为实现接口。它与OOP非常相似。接口指定了类型应该具有的方法,类型决定了如何实现这些方法。它把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口接口定
恶灵退却
·
2024-01-10 21:00
50天精通golang
golang
50天精通
Golang
(第9天)
面向对象(OOP)go并不是一个纯面向对象的编程语言。在go中的面向对象,结构体替换了类。Go并没有提供类class,但是它提供了结构体struct,方法method,可以在结构体上添加。提供了捆绑数据和方法的行为,这些数据和方法与类类似。1.1定义结构体和方法通过以下代码来更好的理解,首先在src目录下创建一个package命名为oop,在oop目录下,再创建一个子目录命名为employee,在
恶灵退却
·
2024-01-10 21:00
50天精通golang
golang
开发语言
后端
50天精通
Golang
(第4天)
程序的流程结构程序的流程控制结构一共有三种:顺序结构,选择结构,循环结构。顺序结构:从上向下,逐行执行。选择结构:条件满足,某些代码才会执行,0-1次。分支语句:if,switch,select循环结构:条件满足,某些代码会被反复的执行多次,0-N次。循环语句:for一、条件语句1.1if语句语法格式:if布尔表达式{/*在布尔表达式为true时执行*/}if布尔表达式{/*在布尔表达式为true
恶灵退却
·
2024-01-10 21:59
50天精通golang
golang
后端
50天精通
Golang
(第3天)
一、变量的使用1.1什么是变量变量是为存储特定类型的值而提供给内存位置的名称。在go中声明变量有多种语法。所有的变量本质就是一小块内存,用于存储数据,在程序运行过程中数值可以改变。1.2声明变量var名称类型是声明单个变量的语法。以字母或下划线开头,由一个或多个字母、数字、下划线组成声明一个变量第一种,指定变量类型,声明后不赋值,使用默认值varnametypename=value第二种,根据值自
恶灵退却
·
2024-01-10 21:29
50天精通golang
golang
50天精通
Golang
(第12天)
channel通道通道可以被认为是Goroutines通信的管道。类似于管道中的水从一端到另一端的流动,数据可以从一端发送到另一端,通过通道接收。在前面讲Go语言的并发时候,我们就说过,当多个Goroutine想实现共享数据的时候,虽然也提供了传统的同步机制,但是Go语言强烈建议的是使用Channel通道来实现Goroutines之间的通信。“不要通过共享内存来通信,而应该通过通信来共享内存”这是
恶灵退却
·
2024-01-10 21:55
50天精通golang
golang
Go语言学习笔记(三)
教程:文档-Go编程语言(study
golang
.com)调用模块代码在call-module-code需要注意,需要在hello目录下操作gomodedit-replaceexample.com/greetings
测试开发-东方不败之鸭梨
·
2024-01-10 20:35
Go
学习
笔记
Go语言学习笔记(二)
Go语言的学习资源以下是一些推荐的Go语言学习资源的链接:Go语言教程:https://
golang
.org/doc/GobyExample:GobyExample
Golang
Tutorials:https
测试开发-东方不败之鸭梨
·
2024-01-10 20:04
Go
golang
教你如何优雅处理
Golang
中的异常
我们在使用
Golang
时,不可避免会遇到异常情况的处理,与Java、Python等语言不同的是,Go中并没有try...catch...这样的语句块,这个时候我们如何才能更好的处理异常呢?
Linux小百科
·
2024-01-10 20:20
golang
java
开发语言
golang
异常处理 panic、defer、recover
golang
中defer的使用规则-Go语言中文网-
Golang
中文社区例1注意:利用recover处理panic指令,defer必须在panic之前声明,否则当panic时,recover无法捕获到panic
乒乒乓乓丫
·
2024-01-10 20:20
golang
其他
Golang
异常处理
文章目录一、
Golang
异常处理一、
Golang
异常处理使用defer加recover组合来实现异常捕获这里:测试了一个错误(一个数除以0),正常情况下程序走到这里会发生panic,然后终止。
银痕
·
2024-01-10 20:20
Golang
golang
开发语言
后端
golang
中的异常处理和异常使用
1.go语言中没有其他语言中的try/catch机制2.在go语言中可以使用panic来抛出异常,使用recover方法来处理异常,通常recover方法写在每个方法defer模块中,在方法return前执行处理funcpanic(ninterface{})/入参是个空接口意味着可以传递任意类型funcrecover()interface{}//反参是空接口意味着可以返回任意类型3.go语言中的异
EntyIU
·
2024-01-10 20:20
golang
golang
开发语言
后端
golang
异常处理
golang
异常处理panic:用来创造异常recover用来获取异常,不能直接获取,需要与defer一起使用。defer:在函数结束时调用,处理异常与资源回收等操作。
__U64
·
2024-01-10 20:49
golang
go
golang
go异常处理
golang异常处理
Golang
线程安全与 sync.Map
前言线程安全通常是指在并发环境下,共享资源的访问被适当地管理,以防止竞争条件(raceconditions)导致的数据不一致Go语言中的线程安全可以通过多种方式实现实现方式互斥锁(Mutexes)Go的sync包提供了Mutex和RWMutex类型来确保在一个时间点只有一个协程可以访问某个资源import"sync"varmusync.MutexvarsharedResourcemap[strin
e5pool
·
2024-01-10 20:15
golang
Golang
通道之 select 语句
前言select语句是一个强大的特性,用于同时等待多个通道操作。select可以监听多个通道的读写事件,并在有通道准备好时执行相关的case。如果有多个case同时就绪,select会随机选择一个执行。如果没有case就绪,select将阻塞,直到至少有一个case就绪。你还可以使用defaultcase来避免select阻塞,它会在其他case都没有就绪时执行使用下面是使用select语句的一个
e5pool
·
2024-01-10 20:45
golang
golang
中异常处理
程序在运行过程中如果出现了问题,可以通过抛出异常、捕获异常来进行异常的处理,在
golang
中,异常的接口为error:typeerrorinterface{Error()string}因此,只要一个结构体实现了
Leo Han
·
2024-01-10 20:44
golang
golang
开发语言
后端
golang
实现加密解密文档
golang
实现加密解密文档packagemainimport("bytes""crypto/aes""crypto/cipher""crypto/rand""encoding/base64""flag
我重来不说话
·
2024-01-10 20:14
golang
开发语言
后端
Golang
: Bson\Json互转
代码packagebson_jsonimport("encoding/json""errors""fmt""gopkg.in/mgo.v2/bson""os""testing")typeUserstruct{Namestring`json:"name,omitempty"bson:"name,omitempty"`CSDNstring`json:"csdn,omitempty"bson:"csdn
听我一言
·
2024-01-10 20:43
Golang基础编程
golang
json
开发语言
Golang
异常处理
前言Go语言中,"异常"的概念与其他语言如Java或Python中的不太相同。Go没有提供传统意义上的try-catch机制来捕获异常。相反,Go使用错误作为其错误处理的主要方式感觉很麻烦,到处都要处理…,没有传统的try-catch好用常见异常的处理向上一级抛,示例funcSomeFunction()(int,error){//...functionlogic...//Whenanerroroc
e5pool
·
2024-01-10 19:42
golang
安装beego时报错:go get: module github.com/beego/bee/v2: Get
beego的时候,运行goget-ugithub.com/beego/bee/v2,报错信息如下:goget:modulegithub.com/beego/bee/v2:Get"https://proxy.
golang
.org
努力奋斗的人生
·
2024-01-10 19:38
beego
golang
[
Golang
]力扣Leetcode - 35. 搜索插入位置(二分查找)
[
Golang
]力扣Leetcode-35.搜索插入位置(二分查找)题目:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。
跳舞的皮埃尔
·
2024-01-10 18:44
Golang
Leetcode算法题
golang
leetcode
算法
Go Defer, Panic, Recover
翻译https://blog.
golang
.org/defer-panic-and-recoverTLTRdefer的函数在压栈的时候也会保存参数的值,而不是在执行时取值。
ShootHzj
·
2024-01-10 18:56
golang
数据库连接池设置多少比较合适,如何设置?
设置数据库连接池的大小需要综合考虑应用程序的需求、数据库系统的性能、服务器资源等因素。连接池大小的不合理设置可能导致性能问题或资源浪费。以下是一些建议:考虑应用程序的并发需求:连接池的大小应该足够满足应用程序的并发需求。如果你的应用程序有高并发请求,连接池的大小可能需要相应地调整。考虑数据库系统的性能:不同的数据库系统对并发连接的处理能力有所不同。某些数据库系统可能更有效地处理大量连接,而另一些可
PHP技术社区
·
2024-01-10 17:10
golang
数据库
开发语言
C语言中socket模块、线程
socket编程
windows下TCP协议测试环境基于Win10x64,VisualStudio服务端代码1.初始化Winsock库;2.创建套接字;3.配置服务端地址;4.绑定套接字;5.监听连接;6
NFTSSTFN
·
2024-01-10 17:52
c语言
开发语言
Golang
图片处理:学习如何添加水印和文字
在本文中,我们将探讨使用
Golang
进行图片处理的方法,学习如何添加水印和文字。背景:
Golang
是一门开源的编程语言,以其简洁的语法、高效的性能和强大的并发能力而闻名。
lxw1844912514
·
2024-01-10 15:00
golang
学习
开发语言
后端
go image.DecodeConfig 和image.Decode 不能同时使用吗
goimage.DecodeConfig和image.Decode获取图片信息时,报错提示:无法读取图像配置image:unknownformatpackagemainimport("fmt""github.com/
golang
lxw1844912514
·
2024-01-10 15:30
golang
开发语言
后端
上一页
26
27
28
29
30
31
32
33
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他