随笔分类 - go编程
摘要:1.为什么要使用连接池 一个数据库服务器只拥有有限的连接资源,一旦所有的连接资源都在使用,那么其它需要连接的资源就只能等待释放连接资源。所以,在连接资源有限的情况下,提高单位时间的连接的使用效率,缩短连接时间,就能显著缩短请求时间。 所以就有了连接池的概念,在初始化时,创建一定数量的连接,先把所有连
阅读全文
摘要:Printf 格式化输出 通用占位符: v 值的默认格式。 %+v 添加字段名(如结构体) %#v 相应值的Go语法表示 %T 相应值的类型的Go语法表示 %% 字面上的百分号,并非值的占位符 布尔值: %t true 或 false 整数值: %b 二进制表示 %c 相应Unicode码点所表示的字符 %d 十进制表示 %o 八进制表示 %q 单引号围绕的字符字面值,由Go语法安全地转义 %x
阅读全文
摘要:Golang 是如何读取YAML,JSON,INI等配置文件的 1. json使用 JSON 应该比较熟悉,它是一种轻量级的数据交换格式。层次结构简洁清晰 ,易于阅读和编写,同时也易于机器解析和生成。 1. 创建 conf.json: 2. 新建config_json.go: 测试: 启动运行后,输
阅读全文
摘要:判断文件或者目录是否存在,如果目录不存在,则创建 package main import ( "fmt" "os" ) func main() { path := "d:/test.txt" b, err := PathExists(path) if err != nil { fmt.Printf(
阅读全文
摘要:1.//创建一个新文件,写入内容 5句 "你好,Golang!" 2.打开一个存在的文件,在原来的内容追加内容 'this is test!' 3.打开一个存在胡文件,读出原来的内容,再追加5行 hello world! package main import ( "bufio" "os" "fmt
阅读全文
摘要:通过flag包我们可以很方便的实现命令行程序的参数标志,接下来我们来看看如何实现命令行程序的使用帮助,通常以参数标志-h或--help的形式来使用. 自动生成使用帮助 我们只需要声明其他参数标志,并执行解析,flag包会帮我们自动生成使用帮助. //main.go //输出2个数,输出较大的数 pa
阅读全文
摘要:1 package main 2 3 import ( 4 "fmt" 5 "strings" 6 ) 7 8 func main() { 9 10 s1 := " aBc" 11 s2 := "100a" 12 s3 := s1 + s2 13 fmt.Println(s3) 14 fmt.Println(strings.HasPrefix(s3, "a")) //判断前缀 15 fmt.Pri
阅读全文
摘要:1 package main 2 3 4 import ( 5 "fmt" 6 "time" 7 ) 8 9 func test() { 10 time.Sleep(time.Millisecond*1000) 11 } 12 13 func main() { 14 now := time.Now() 15 fmt.Pr...
阅读全文
摘要:1.strings使用 统计字符串出现次数 Count 用于计算字符串 substr 在字符串 s 中出现的非重叠次数: package main import ( "fmt" "strings" ) func main() { substr := "is" s := "This is a go p
阅读全文
摘要:1.strings使用 前缀和后缀 HasPrefix判断字符串s是否以prefix开头: 示例: HasSuffix 判断字符串 s 是否以 suffix 结尾: 示例: 字符串包含关系 Contains 判断字符串 s 是否包含 substr : 示例: 判断子字符串或字符在父字符串中出现的位置
阅读全文
摘要:Print、Println 、Printf 、Sprintf 、Fprintf都是fmt 包中的公共方法,在需要打印信息时需要用到这些函数,那么这些函数有什么区别呢? Printf 格式化输出 通用占位符: 布尔值: 整数值: 浮点数及复数: 字符串和bytes的slice表示: 指针: #这里没有
阅读全文
摘要:“go.useCodeSnippetsOnFunctionSuggest”: true 文件-->首选项 >设置 >用户设置 添加下行;然后就可以自动补全了,包括() “go.useCodeSnippetsOnFunctionSuggest”: true “go.useCodeSnippetsOnF
阅读全文
摘要:保留的关键字段 1.Question1 1 package main 2 3 4 import ( 5 "fmt" 6 ) 7 8 func list(n int) { 9 10 for i := 0; i <= n; i++ { 11 fmt.Printf("%d+%d=%d\n", i, n -
阅读全文
摘要:一.规范目录结构 D:\project\src\go_dev\day1\example1 二.设置GOPAH环境变量 三.hello world 1.hello world go build go_dev\day1\example1 生成example1.exe 执行example1.exe 2.g
阅读全文
摘要:1.1 变量Go 是静态类型语⾔言,不能在运⾏行期改变变量类型。使⽤用关键字 var 定义变量,⾃自动初始化为零值。如果提供初始化值,可省略变量类型,由编译器⾃自动推断。 在函数内部,可⽤用更简略的 ":=" ⽅方式定义变量。func main() {x := 123 // 注意检查,是定义新局部变
阅读全文
摘要:安装调试工具 go get github.com/derekparker/delve/cmd/dlv 增加断点调试 调试 >启动调试
阅读全文