草庐IT

数据指标

全部标签

go - 在 golang 项目中查询 sqlx 后数据库连接仍在使用中

我在一个使用sqlx和postgres的golang项目中工作。当应用程序启动时,我打开一个与数据库的连接并像这样使用它:varconnRO*sqlx.DBvarconnRW*sqlx.DB.../GetInstance-willreturntheconnectionopenedtothedatabasefuncGetInstance(readonlybool)*sqlx.DB{ifreadonly{returnconnRO}returnconnRW}问题是在某些代码块中连接仍在使用中,这里有一个例子:instanceRW:=database.GetInstance(false)ins

json - 如何将所有解码数据写入一个 JSON 文件?

我尝试将XML数据解析为JSON文件,但是当我开始将编码(marshal)数据写入JSON时,它只是重写了JSON文件中的数据,因此,我得到了包含最后一个XML元素的文件。如何将整个数据写入JSON文件?解析XML并将数据编码为JSON的代码片段decoder:=xml.NewDecoder(file)resultData:=map[string]map[string]string{}for{t,_:=decoder.Token()ift==nil{break}switchet:=t.(type){casexml.StartElement:ifet.Name.Local=="profi

templates - 如何用两组数据修复golang嵌套模板

我想将两个数据结构放入golang嵌套模板中,我为“url”和“用户”数据创建了一个这样的结构,typeurlstruct{idstringUseridstringLong_urlstringShort_urlstring}typeuserstruct{EmailstringFirst_namestringLast_namestringPassword[]byte}我想把这两组数据放到一个嵌套的golang模板中。用户数据只是一组数据,url结构将有很多行数据。我的想法是我会像这样创建另一个结构,typeDatastruct{UU[]urlUser[]user}然后执行以下操作,bb:

Python Proton 将二进制数据发送到 Active MQ

我正在尝试将一个简单的字符串消息写入ActiveMQ队列:defwrite_to_amq(message,host_name,port,queue):conn=BlockingConnection(f'{host_name}:{port}')sender=conn.create_sender(queue)sender.send(Message(body='message'))conn.close()消息进入队列时很好,但当我在ActiveMQ网络用户界面上查看它时,它似乎包含一些二进制数据。它将内容报告为SpESsESw.message。我期待内容只是message[附加数据点]我还在

postgresql - 使用嵌套对象(结构)在 Go API 中插入数据

我正在创建一个GolangAPI,但遇到了障碍。对于每个POST,这就是我得到的:“错误”:“sql:转换参数$2类型:不支持的类型main.Data,一个结构”我希望我的数据是格式化的"name":"test","other":{"age":"","height":""}}我怎样才能做到这一点?请参阅下面的代码,了解我到目前为止所尝试的内容。模型.gotypeDatastruct{IDint`json:"id"`Namestring`json:"name,omitempty"`Other*Other`json:"other,omitempty"`}typeOtherstruct{Ag

postgresql - 如何使用 go pg CRUD Postgres Point 数据类型

我正在使用Point数据类型在Postgres数据库中存储坐标。如何将Point数据类型映射到Golang数据类型?我没有找到任何相同的文档。 最佳答案 go-pg没有对点类型的本地支持(从PostGIS开始)。我所做的立交桥(可能不是最好的解决方案,但我确实设法让它工作)是在我的模型上放置单独的纬度和经度字段,并在查询本身上使用ColumnExpr使用ST_X(对于经度)和ST_Y(对于纬度,不要忘记)获取单个值。型号:typeMyModelstruct{IDint64NamestringLocationLatfloat64Loc

regex - 逐行读取特定数据

我正在尝试从特定格式的文件中读取数据。文件如下所示title:stack|content:overflow|metadata:53|comments:nonetitle:google|content:website|metadata:213|comments:Demos我需要逐行阅读为标题变量分配title值("stack"),为内容分配content值("overflow")每行。scanner:=bufio.NewScanner(file)forscanner.Scan(){data:=scanner.Text()data_arr:=strings.Split(data,"|")f

go - 使用数据库/sql 库并在新连接失败时从保管库中获取密码

我有一个用Go编写的长时间运行的守护进程,它监听一个端口并为每个新连接启动多个go例程来处理数据。我的funcmain()中有一个全局变量db被分配给database/sql库的open()函数返回的连接上下文脚本。出于安全原因,我们将数据库密码存储在保险库中,该保险库每两天轮换一次。我可以在它第一次创建连接上下文时从保险库中获取密码,并且在所有go例程中使用相同的上下文来创建新的数据库连接。但是,当保管库轮换密码时,所有新的数据库连接都会失败。我想知道处理此问题的最佳方法是什么,以便它在失败时从保险库中获取密码并重新连接。如果它是一种oop语言,我可以扩展db库并覆盖连接函数以捕获错

html - 无法将输入表单数据作为 Golang 中的变量

我想将此输入表单“电子邮件”值作为Go中的变量。但是我做不到。我的html代码:我的golang代码:funcmain(){router:=newRouter()router.HandleFunc("/forgot",forgotPageHandler)}funcforgotPageHandler(writerhttp.ResponseWriter,request*http.Request){pInfo:=PageInfo{Title:"Forgot",}_,err:=ActiveSession(writer,request)ifrequest.Method=="GET"{fmt.Pr

sql - 使用 gorm 插入数据时,检查不存在相同

我正在使用gorm。我想在不存在相同值的情况下插入值就像原始sql一样。INSERTINTOstudent(firstname,lastname)SELECT'NEWFIRSTNAME','NEWLASTNAME'FROMDUALWHERENOTEXISTS(SELECT1FROMtable_nameWHEREfirstname='NEWFIRSTNAME'ANDlastname='NEWLASTNAME')LIMIT1;如何用gorm实现这个功能typeStudentstruct{FirstnamestringLastnamestring}funcinsert(){stu:=Stud