![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
后端
jcetpoor
ds
展开
-
mysql 报Error 1390: Prepared statement contains too many placeholdersy - 记一次xorm插入多条数据得报错
近日使用xorm插入多条数据时发现出错Error 1390: Prepared statement contains too many placeholders网上发现是占位符过多,原来是xorm生成了多条insertsql一起执行报的错,一条sql占位符不能超过65535个我使用得解决办法是分批次插入 index := 0 //如果不超过两千条即直接插入即可 if len(acc) < 2000 { //这里分为两千条插入一次 //直接插入 //todo fmt.Println(原创 2021-04-13 20:51:20 · 822 阅读 · 0 评论 -
golang交叉编译
SET CGO_ENABLED=0 SET GOOS=linux SET GOARCH=amd64 go build原创 2021-03-05 16:47:34 · 83 阅读 · 0 评论 -
如何比较golang中的结构体是否相等
如果是相同的无复杂类型的结构体创建的对象 可以直接使用 == 对比值和指针简单类型可排序的数据类型整型Integer浮点型Floating-point字符串String可以比较的数据类型除了上述三种外,还有Boolean,Complex,Pointer,Channel,InterfaceArray复杂类型 不可比较的数据类型SliceMapFunction如下type User struct { age int name string}func m.原创 2020-10-07 02:54:45 · 4753 阅读 · 0 评论 -
golang安装新版本后debug启动报 Version of Delve is too old for this version of Go
今天把1.13的旧版本golang更新成1.15.2 发现debug报错\完整的报错信息可以看到 第4行的dlv.exe使用的是goland自带的调试包的 ,但是我的goland是旧版本,最大支持到1.13 所以会报错 我们可以找到该工具 替换成最新版本GOROOT=D:\Program Files\go #gosetupGOPATH=D:\golandWorkapace;C:\Users\Qiang\go #gosetup"D:\Program Files\go\bin\go.exe" .原创 2020-10-06 20:14:24 · 1088 阅读 · 0 评论 -
golang内置函数 new()与make()的区别
使用new(T) 会为 T 类型的新值分配已置零的内存空间,并返回地址(指针)实际使用如下 ints := new([]int) //创建一个切片 这时ints是指针类型 *ints = append(*ints, 1,123,4,56,7,8,89,8,7) //使用必须先用*取值 fmt.Println(*ints) //如果想打印结果是切片里的值也必须使用*取值 [1 123 4 56 7 8 89 8 7]使用 make(T,len) 返回初始化之后的 T 类型的值.原创 2020-10-02 19:18:47 · 117 阅读 · 0 评论 -
golang关于defer执行顺序的面试题
func main() { defer_call()}func defer_call() { defer func() { fmt.Println("打印前") }() defer func() { fmt.Println("打印中") }() defer func() { fmt.Println("打印后") }() panic("触发异常")}//执行结果打印后打印中打印前panic: 触发异常goroutine 1 [running]:main.defer_call原创 2020-09-28 00:29:37 · 932 阅读 · 0 评论 -
go中常用的同步原语<二>Mutex
go中常用的同步原语 <二> Mutex有时候在Go代码中可能会存在多个goroutine同时操作一个资源(临界区),这种情况会发生竞态问题(数据竞态)。类比现实生活中的例子有十字路口被各个方向的的汽车竞争;还有火车上的卫生间被车厢里的人竞争。//在没有锁的情况下package mainimport ( "fmt" "time")var n = 0func count() { fmt.Println(n) n = n + 1}func main() { go count()原创 2020-09-16 01:44:34 · 157 阅读 · 0 评论 -
go中常用的同步原语 <一> init
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2020-09-16 00:58:00 · 160 阅读 · 0 评论 -
VO DTO DO PO
VO DTO DO POVO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对象。DO(Domain Object):领域对象,就是从现实世界中抽象出来的有形或无形的业务实体。P原创 2020-05-19 11:52:39 · 102 阅读 · 0 评论