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
golang学习笔记
Golang 学习笔记(09)—— json和xml解析
本文为转载,原文:
Golang学习笔记
(09)——json和xml解析Golangxmlpackageimport"encoding/xml"函数MarshalfuncMarshal(vinterface
ChainZhang
·
2019-11-03 16:37
Golang web路由实现方式整理总结
Go的http包详解Go语言经典库使用分析(七)|高性能可扩展HTTP路由httproutergolang自定义路由控制实现(一)golang自定义路由控制实现(二)-流式注册接口以及支持RESTFUL
Golang
水主沉浮
·
2019-10-23 13:20
net-http
web
http
golang
golang学习笔记
---rand
在Golang中,有两个包提供了rand,分别为"math/rand"和"crypto/rand",对应两种应用场景。"math/rand"包实现了伪随机数生成器。也就是生成整形和浮点型。该包中根据生成伪随机数是是否有种子(可以理解为初始化伪随机数),可以分为两类:有种子。通常以时钟,输入输出等特殊节点作为参数,初始化。该类型生成的随机数相比无种子时重复概率较低。无种子。可以理解为此时种子为1,S
清明-心若淡定
·
2019-10-12 19:00
golang学习笔记
--go test
Go语言拥有一套单元测试和性能测试系统,仅需要添加很少的代码就可以快速测试一段需求代码。gotest命令,会自动读取源码目录下面名为*_test.go的文件,生成并运行测试用的可执行文件。输出的信息类似性能测试系统可以给出代码的性能数据,帮助测试者分析性能问题。单元测试——测试和验证代码的框架要开始一个单元测试,需要准备一个go源码文件,在命名文件时需要让文件必须以_test结尾。默认的情况下,g
清明-心若淡定
·
2019-10-12 15:00
golang学习笔记
---string && strconv
1.字符串的组成?Golang的字符串都是由单个字节连接起来的,每个字节都是UTF8编码标识的Unicode文本。(不需要在考虑中文不兼容问题)2.如何遍历字符串?先看一个例子:packagemainimport("fmt")funcmain(){varstr="123"fori:=0;i
清明-心若淡定
·
2019-10-12 14:00
golang学习笔记
---slice
Go语言中的slice类型可以理解为是数组array类型的描述符,包含了三个因素:指向底层数组的指针slice目前使用到的底层数组的元素个数,即长度底层数组的最大长度,即容量因此当我们定义一个切片变量,s:=make([]int,5,10),即为指向了一个最大长度为10的底层数组,目前切片s使用到的长度为5。基于slice的定义,在使用slice时,有以下几点注意事项:1.对slice进行切分操作
清明-心若淡定
·
2019-10-12 11:00
golang学习笔记
----并发
并发模型并发目前来看比较主流的就三种:多线程:每个线程一次处理一个请求,线程越多可并发处理的请求数就越多,但是在高并发下,多线程开销会比较大。协程:无需抢占式的调度,开销小,可以有效的提高线程的并发性,从而避免了线程的缺点的部分基于异步回调的IO模型:比如nginx使用的就是epoll模型,通过事件驱动的方式与异步IO回调,使得服务器持续运转,来支撑高并发的请求golang的goroutine就是
清明-心若淡定
·
2019-10-12 10:00
golang学习笔记
--接口
go的接口类型用于定义一组行为,其中每个行为都由一个方法声明表示。接口类型中的方法声明只有方法签名而没有方法实体,而方法签名包括且仅包括方法的名称、参数列表和结果列表。只要一种数据类型的方法集合中包含了Talk接口声明中的所有方法,那么它就一定是Talk接口的实现类型。typeTalkinterface{Hello(usernamestirng)stringTalk(heardstring)(sa
清明-心若淡定
·
2019-09-30 15:00
golang学习笔记
--函数和方法
在go中,函数类型是一等类型,这意味着可以吧函数当做一个值来传递和使用。funcdivide(dividendint,divisorint)(int,error){//省略部分代码}参数列表中的参数必须有名称,结果列表中结果的名称可有可无(要么都省略名称,要么都有名称)。funcdivide(dividendint,divisorint)(resultint,errerror){//省略部分代码}
清明-心若淡定
·
2019-09-30 13:00
golang学习笔记
--包导入及go 常用命令及参数
包导入:包导入路劲即代码包在工作区的src目录下的相对路径。同一个源码文件中导入的多个代码包的最后一个元素不能重复,否则引起编译错误,如果只导入不使用,同样会引起编译错误若想导入最后一个元素名相同的,则需为其中一个起个别名egimport("github.com/Sirupsen/logrus"mylogrus"gopcp.v2/helper/log/logrus")如果想不加前缀而直接使用某个依
清明-心若淡定
·
2019-09-30 08:00
Golang学习笔记
(五):函数
函数Go语言里面的核心设计,通过关键字func来声明复制代码代码如下:funcfuncName(inputtype1,input2type2)(output1type1,output2type2){//logicalcodereturnvalue1,value2}基本语法1.语法复制代码代码如下://一般函数funcfunc_name(aint){println(a)}//多参数,无返回值func
·
2019-09-23 21:26
Golang学习笔记
(六):struct
structstruct,一组字段的集合,类似其他语言的class放弃了大量包括继承在内的面向对象特性,只保留了组合(composition)这个最基础的特性1.声明及初始化复制代码代码如下:typepersonstruct{namestringageint}//初始化funcmain(){varPpersonP.name="tom"P.age=25fmt.Println(P.name)P1:=p
·
2019-09-23 21:26
Golang学习笔记
(四):array、slice、map
一.Array在Go语言中,数组是一个值类型(valuetype)所有的值类型变量在赋值和作为参数传递时都将产生一个复制动作如果作为函数的参数类型,则在函数调用时参数发生数据复制,在函数体中无法修改传入数组的内容数组相等用=!=比较,不能用=0e.g.vara[5]int//[00000]varc[2][3]int//二维varbint=[5]int{1,2,3,4,5}//声明并初始化a:=[3
·
2019-09-23 21:25
Golang学习笔记
(三):控制流
控制结构分为:条件+选择+循环IF1.说明复制代码代码如下:条件表达式没有括号支持一个初始化表达式(可以是多变量初始化语句)初始化语句中定义的都是只能在block级别中使用的局部变量,不能在block之外使用左大括号必须和条件语句在同一行(必须与if/else在同一行)go没有三元运算符if判断语句条件不需要括号在判断语句里卖弄允许声明一个变量,其作用域只在逻辑块内,其他地方不起作用花括号一定存在
·
2019-09-23 21:25
Golang学习笔记
(二):类型、变量、常量
基本类型1.基本类型列表复制代码代码如下:类型长度说明bool1true/false,默认false,不能把非0值当做true(不用数字代表true/false)byte1uint8别名rune4int32别名。代表一个unicodecodepointint/unit一来所运行的平台,32bit/64bitint8/uint81-128~127;0~255int16/uint162-32768~3
·
2019-09-23 21:24
Golang学习笔记
(一):简介
Go语言最主要的特性复制代码代码如下:自动垃圾回收更丰富的内置类型函数多返回值错误处理匿名函数和闭包类型和接口并发编程反射语言交互性高性能/高效开发安装安装说明地址http://golang.org/doc/install包下载地址https://code.google.com/p/go/downloads/list确认是否安装成功复制代码代码如下:goversion//查看版本环境变量设置整体目
·
2019-09-22 16:01
Golang学习笔记
Golang学习笔记
文章目录
Golang学习笔记
Go是啥?
雨声残响丶
·
2019-09-09 18:08
GoLang学习笔记
| 解决vscode中安装go tools和golint失败的问题 | 百度云链接
---恢复内容开始---最近自学Golang使用vscode特此记录1.安装bash电脑装有git,git自带一个bash,所以只要把bash.exe配置环境path里面:目录打到bin即可。%GITHOME%\bin2.安装插件由于golang.org被墙,采用github方式从远端拉取gitclonehttps://github.com/golang/tools.gitgitclonehttp
anliu1687
·
2019-09-08 21:00
开发工具
golang
git
golang学习笔记
-map类型
在刚刚接触go语言的时候,就看到很多地方出现了map。就对这个map很困惑,那么这个map究竟是什么呢。让我们一起来看一看吧。map(映射)是一个种数据结构,用于存储一些无序的键值对。映射使用了两个数据结构来存储数据。第一个数据结构是数组,内部存储的是用户选择桶的散列值。第二个数据结构是一个字节数组,用于存储键值对。映射是一个存储键值对的无序集合。创建和初始化go语言中可以使用make函数,也可以
旧梦发癫
·
2019-09-03 00:00
map
golang
golang学习笔记
---常用第三方包
包的介绍包类似Java中概念,jar是源代码管理,分发的最小单位。目前多数包来自Github官方包来自golang.org/x/...可以在如下网址查询到高频使用的第三方包清单https://godoc.org常用清单github.com/astaxie/beego成熟稳定的Web框架,包含更过的WebFramework特性国内开发者astaxiegithub.com/go-redis/redis
9栋108
·
2019-08-20 20:00
golang
人工智能
json
golang学习笔记
之map元素删除
golang学习笔记
之map元素删除golangmap元素删除要比c++方便多了,可以直接在循环遍历的时候删除元素,而不用担心程序崩溃;示例代码如下:packagemainimport("fmt")funcmain
woailuo626
·
2019-08-10 10:50
golang
go
golang
go
map
golang学习笔记
--切片slice 与数组 arr
因为我是写php的,刚开始写go的时候老是被数组坑。因为在go中的数组是固定长度,所以会存在越界的时候。而在go中也很少直接使用数组。更多的时候会使用slice(切片)。数组数组是一个由固定长度的特定类型元素组成的序列,一个数组可以由零个或多个元素组成。数组的长度是固定的。和数组对应的类型是Slice(切片),它是可以增长和收缩动态序列,slice功能也更灵活,但是要理解slice工作原理的话需要
旧梦发癫
·
2019-08-05 00:00
slice
golang
Golang学习笔记
(7)测试与性能调优
第七章测试与性能调优测试传统测试vs表格驱动测试传统测试测试数据和测试逻辑混在一起出错信息不明确一旦一个数据错误测试全部结束表格驱动测试分离的测试数据和测试逻辑明确的出错信息可以部分失败go语言的语法是的我们更容易实现表格驱动测试funcTestTriangle(t*testing.T){tests:=[]struct{a,b,cint}{{3,4,5},{5,12,13},{8,15,17},{
我是黄骞
·
2019-06-04 13:54
Go学习笔记
2019-01-18
Golang学习笔记
-文件操作
2019-01-18
Golang学习笔记
-文件操作1.简单读取文件packagemainimport("bufio""fmt""io""os")/*简单文件操作练习*/funcmain(){file,err
piupiuhao
·
2019-04-06 17:11
Go
2019-01-19
Golang学习笔记
-JSON操作
2019-01-19
Golang学习笔记
-JSON操作1.序列化map类型packagemainimport("encoding/json""fmt""strconv")//注意这里的Person的各个字段一定要大写
piupiuhao
·
2019-04-06 17:53
Go
GOlang学习笔记
(踩坑记)1,安装与资源
在安装之间,我们先了解GolangGo语言是谷歌2009发布的第二款开源编程语言。Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。Go语言是Google开发的一种静态强类型、编译型,并发型,并具有垃圾回收功能的编程语言。为了方便搜索和识别,有时会将其称为Golang。罗伯特·格瑞史莫,罗勃·派克(RobPike)及肯
技术流刘
·
2019-02-18 11:48
golang学习笔记
之-fmt.Println源码print.go简单探索
看下error接口//error接口typeerrorinterface{Error()string}实现error接口packagemainimport"fmt"typefileErrorstruct{}//https://blog.csdn.net/Maggie_up有问题欢迎指正!func(fe*fileError)Error()string{return"文件错误"}funcmain(){
Maggie_up
·
2019-02-07 14:42
golang学习笔记
之-context详细理解篇
image.pngcontext.Background():可以简单理解我们知道这个上下文要去干什么context.TODO():可以简单理解我们不清楚要使用哪个上下文、或者还没有可用的上下文下面代码演示:1.context.WithCancel():返回Context和取消函数用来取消Contextpackagemainimport("context""log""os""time")var(lo
Maggie_up
·
2019-01-31 17:30
golang学习笔记
刚接触到golang,看了很多书,但是感觉不动手,永远就只是会一个Hello,world。为了激励自己,特意创建一个学习笔记,希望也有人可以和我一起努力,一起进步。包每个go程序都是由包构成的,程序从main包开始运行注意:此程序的运行环境是固定的,因此rand.Intn总是会返回相同的数字。packagemainimport("fmt""math/rand")funcmain(){fmt.Pri
阿狸__小姑凉
·
2019-01-24 17:41
Golang学习笔记
Golang面试题解析Go笔试面试Go面试题答案与解析Golang经典面试题上Golang经典面试题下golang语言面试题总结(一)Golang面试题解析Golang-常用第三方库微服务Go语言构建微服务一站式解决方案Go微服务-第一部分-介绍及理论基础Go微服务实战汇总Go实践微服务–go-micro编写微服务哔哩哔哩-哔哩哔哩的Go微服务实战04【千锋Go语言】Go语言微服务实践go-mic
4change
·
2019-01-20 12:41
Golang学习笔记
-生成windows平台的dll文件
目标将golang编写的包以dll的形式导出,供windows平台下的应用程序使用。环境golang:goversiongo1.11.4windows/amd64用于生成中间文件和c++库的头文件vs2015:编译windows平台上的应用程序TDM-gcc-x64:编译过程中需要将gobuild生成的.a中间根据导出函数定义文件生成dll,在此处下载TDM-gcc-x64因为我这边是在x64的平
搬砖的小青年
·
2019-01-09 15:07
原创
golang
Golang学习笔记
之MD5
1.单向加密什么是单向加密算法。简而言之就是不可解密的加密方法,也叫作非可逆加密,用这种方法加密过的东西,地球上现有的人类在有限的时间内是无法解密的,包括加密者自己。2.常用的单向加密算法有哪些呢?主要有:BASE64、MD5、SHA、HMAC,其中最为常见的就有MD5,BASE64。这里我们主要介绍最常使用的MD5算法。该算法可以用来得到一个128bit的值,既可以作为K-V中的key,也可以对
学生黄哲
·
2018-12-24 21:21
Golang学习笔记
之日志log、zap
一、log日志包log支持并发操作。其结构定义如下:typeLoggerstruct{musync.Mutex//ensuresatomicwrites;protectsthefollowingfieldsprefixstring//prefixtowriteatbeginningofeachline//⽇志⾏前缀flagint//properties//⽇志打印格式标志,⽤于指定每⾏⽇志的打印格
学生黄哲
·
2018-12-22 17:38
Golang学习笔记
之简易聊天系统服务器的搭建
下面先列举一下程序使用到的函数,省的大家去找,直接拷贝官方api的解释吧。funcDialTCP(netstring,laddr,raddr*TCPAddr)(*TCPConn,error)DialTCP在网络协议net上连接本地地址laddr和远端地址raddr。net必须是"tcp"、"tcp4"、"tcp6";如果laddr不是nil,将使用它作为本地地址,否则自动选择一个本地地址。func
学生黄哲
·
2018-12-14 17:04
Golang学习笔记
之延迟函数(defer)的使用小结
golang的defer优雅又简洁,是golang的亮点之一。defer在声明时不会立即执行,而是在函数return后,再按照先进后出的原则依次执行每个defer,一般用于释放资源、清理数据、记录日志、异常处理等。关键字defer于注册延迟调用。这些调用直到ret前才被执行,通常用于释放资源或错误处理。一、当defer被声明时,其参数就会被实时解析funca(){i:=0deferfmt.Prin
学生黄哲
·
2018-12-12 09:21
Golang学习笔记
之集合(map)
Map是一种无序的键值对的集合。Map最重要的一点是通过key来快速检索数据,key类似于索引,指向数据的值。Map是一种集合,所以我们可以像迭代数组和切片那样迭代它。不过,Map是无序的,我们无法决定它的返回顺序,这是因为Map是使用hash表来实现的。•引⽤类型,哈希表。•键必须是⽀持相等运算符(==、!=)类型,⽐如number、string、pointer、array、struct,以及对
学生黄哲
·
2018-12-11 08:55
Golang学习笔记
之包(package)
包是结构化代码的一种方式:每个程序都由包的概念组成,可以使用自身的包或者从其它包中导入内容。一、工作空间编译⼯具对源码目录有严格要求,每个⼯作空间(workspace)必须由bin、pkg、src三个目录组成。二、包结构所有代码都必须组织在package中。•包由同⼀目录下的多个源码⽂件组成。•包名类似namespace,与包所在目录名、编译⽂件名⽆关。•目录名最好不⽤main、all、std这三
学生黄哲
·
2018-12-08 11:15
golang学习笔记
---命名
Go语言中的函数名、变量名、常量名、类型名、语句标号和包名等所有的命名,都遵循一个简单的命名规则:一个名字必须以一个字母(Unicode字母)或下划线开头,后面可以跟任意数量的字母、数字或下划线。大写字母和小写字母是不同的:heapSort和Heapsort是两个不同的名字。Go语言中类似if和switch的关键字有25个;关键字不能用于自定义名字,只能在特定语法结构中使用。breakdefaul
weixin_33919950
·
2018-11-23 08:00
golang
golang学习笔记
---命令行参数
os包以跨平台的方式,提供了一些与操作系统交互的函数和变量。程序的命令行参数可从os包的Args变量获取;os包外部使用os.Args访问该变量。os.Args变量是一个字符串(string)的切片(slice)(译注:slice和Python语言中的切片类似,是一个简版的动态数组),切片是Go语言的基础概念,稍后详细介绍。现在先把切片s当作数组元素序列,序列的成长度动态变化,用s[i]访问单个元
weixin_34072637
·
2018-11-20 11:00
golang
python
操作系统
Golang学习笔记
--log模块(三)
Golang的log模块可谓是语言层面上非常基础的一层库,反应的是语言本身的特征而不是一个服务应该怎样怎样。为了方便自己写应用,我按照自己的需求提出一些log的API并重新实现。和Golang的log模块形成互补。自己的log模块设计对于我自己的log模块,暂时不需要log4j里面复杂的配置系统,也就不需要父子继承的命名约定。我需要这样一套系统。在主模块中或者基础模块中进行日志的初始化,在需要使用
cbmljs
·
2018-11-16 18:28
Golang
golang学习
go
log
Golang学习笔记
--遍历文件夹及子文件夹的所有文件
遍历文件夹及子文件夹下的所有文件,最容易想到的就是用递归的方法,先访问当前目录,读取当前目录下的所有文件,如果是个目录,递归调用遍历目录下的所有文件。具体代码如下:packagemainimport("fmt""io/ioutil")funcGetAllFile(pathnamestring,s[]string)([]string,error){rd,err:=ioutil.ReadDir(pat
cbmljs
·
2018-11-06 17:03
Golang
golang学习
Golang学习笔记
--xml字符串转json
Go语言中struct和xml,struct和json之间的互相转换比较容易实现,那么xml直接转json该如何实现?其本质还是通过struct间接转换的。让我们直接看下代码:packagemainimport("encoding/json""encoding/xml""fmt""os")varxmlDataRq=`8800610000B000002011022414:49:20201102241
cbmljs
·
2018-11-05 14:28
Golang
golang学习
Golang学习笔记
之golang操作mongodb(mac环境)
1.在macos上安装mongodb,用homebrewbrewinstallmongodb安装完成后要进行配置建立一个文件夹mongoDatamongoDatadb:用来存放数据库文件etc:用来存放mongodb配置文件mongo.conflogs:用来存放日志文件mongo.logmongo.conf为mongo的配置文件,内容如下#数据库路径dbpath=/Users/tugame/mon
Noob_coder_JZ
·
2018-10-22 23:24
Golang学习
golang学习笔记
7:指针
不像Java和.NET,Go语言为程序员提供了控制数据结构的指针的能力;但是,你不能进行指针运算。通过给予程序员基本内存布局,Go语言允许你控制特定集合的数据结构、分配的数量以及内存访问模式,这些对构建运行良好的系统是非常重要的:指针对于性能的影响是不言而喻的,而如果你想要做的是系统编程、操作系统或者网络应用,指针更是不可或缺的一部分。程序在内存中存储它的值,每个内存块(或字)有一个地址,通常用十
编程老司机
·
2018-10-20 23:57
golang学习笔记
概述类型检查:编译时运行环境:编译成机器代码直接运行编程范式:面向接口,函数式编程,并发编程Go语言并发编程采用CSP(CommunicationSequentialProcess)模式不需要锁,不需要callback并发编程vs并行计算变量定义使用var定义变量vara,b,c,boolvars1,s2string=“hello”,“world”可放在函数内,或直接放在包内使用var()集中定义
fangyuanqi
·
2018-09-08 20:56
软件
环境
golang学习笔记
17 爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍...
golang学习笔记
17爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍go语言爬虫框架:gocolly/colly,goquery,colly,chromedp
weixin_33950035
·
2018-08-09 14:00
爬虫
python
java
2018-07-23
golang学习笔记
1.心跳包:发送心跳包是为了不断监听和发送达到长连接的效果2.处理连接mysql和sqlite3.KCP去这里下载kcp-go4.protoc.exe去这里下载protoc-3.6.0-win32.zip5.bat正则表达式前面加个REM表示接下来才是正则匹配@echooffecho正在生成Go代码...REMprotoc-I=./--go_out=../PB/.\messageid.protop
phu
·
2018-07-23 20:43
Golang学习笔记
-1.5 常量
本文系第五篇Golang语言学习教程在Go语言中,“常量”用于表示固定的值。每种常量的潜在类型都是基础类型:bool、string、int、float32、float64比如5-1Goisinteresting3.1415常量定义一个常量声明语句定义了常量的名字,和变量的声明语法类似,用关键字const定义常量:例:packagemainimport"fmt"funcmain(){constpai
xunk1900
·
2018-07-12 13:50
golang学习笔记
10 beego api 用jwt验证auth2 token 获取解码信息
golang学习笔记
10beegoapi用jwt验证auth2token获取解码信息Jsonwebtoken(JWT),是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC7519
weixin_33963594
·
2018-05-20 01:00
golang
json
javascript
golang学习笔记
8 beego参数配置 打包linux命令
golang学习笔记
8beego参数配置打包linux命令参数配置-beego:简约&强大并存的Go应用框架https://beego.me/docs/mvc/controller/config.md=
weixin_33769207
·
2018-05-20 00:00
操作系统
golang
数据库
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他