问个关于 golang web 开发的问题

2020-10-13 21:56:56 +08:00
 zxCoder

刚学 golang,也不知道这种写法对不对,还是 java 的那种思想,dao 包里是直接用自带的 sql 包操作数据库的

所以我的问题是,这几个 dao 操作要怎么写成事务的形式呢?

伪代码

func AddNewPost()  {
	dao.xxx()
    dao.yyy()
    dao.zzz()
}
917 次点击
所在节点    问与答
6 条回复
Muninn
2020-10-13 22:12:38 +08:00
需要传进去事务对象 不过一般没人这么写

找点优秀 golang 项目看看呗。 用一个语言逐行重写另一个语言的代码不是个学习语言的好办法。
zxCoder
2020-10-13 22:32:22 +08:00
@Muninn 有推荐的吗 我目前是用原生的 http/net 写的 直接看大型项目感觉帮助不大
Muninn
2020-10-13 23:29:09 +08:00
用 gorm 的人多
FutherAll
2020-10-13 23:35:53 +08:00
db.begin
db.commit
标准库的事务
或者直接用 gorm/xorm,有一层 func 封装
zxCoder
2020-10-14 08:46:54 +08:00
@FutherAll var DB *sql.DB 这个 DB 对象我写成全局变量的形式,可以吗?
FutherAll
2020-10-14 09:52:18 +08:00
@zxCoder 可以,这个 db 代表你和数据库的一个连接

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/714635

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX