使用 GORM(Go 的 ORM 库)连接数据库,并实现增删改查操作|青训营

30 阅读2分钟

一,什么是 gorm? gorm 是迭代了 10 年的 orm 框架,在字节跳动广泛使用,并进行了开源拓展。

ps:这里不得不问什么是 orm 框架? 1 定义:orm 即 object-relation mapping(对象关系映射),它的作用是在关系型数据库和业务实体对象之间做一个映射。这样,我们在操作具体业务时,就不用再去和复杂的 sql 语句打交道,只需要简单的操作对象的属性和方法。

2 起源:面相对象是从软件工程的基本原则上(藕合,聚会,封装)发展起来的,但是关系型数据库是从数学上发展起来的,二者是不匹配的。而 orm 作为中间件的形式实现数据在不同场景下数据关系映射。因此,为了解决面相对象和数据库不匹配的现象,orm 中间件技术由此而来。

3那么 orm 有什么优缺点呢? 优点 ,简单易行,快速开发。隐藏了数据访问的所有细节,封闭的通用数据库交互。 缺点 ,牺牲性能,复杂查询力不从心。 image.png

二,重头戏,orm 的最佳实践 gorm 框架,并使用 gorm 实现对数据库的增删改查 1 gorm 的基本使用

1.1定义 gorm model,连接数据库,创建数据,查询数据,更新数据,删除数据。 image.png

1.2gorm 中创建数据的具体实现 完全在代码中使用面相对象的方法实现creat()。 image.png   1.3gorm 中查询数据的具体实现 find()方法 image.png

1.4gorm 中更新数据的具体实现 updates 方法 image.png

1.5gorm 中删除数据的具体实现 delete()方法 image.png

2.gorm 的性能提高 使用 preparestmt 缓存预编译语句可以提高后续调用的速度。

ps:思考,gorm 框架类似于 mvc 框架中的事物层,用来封装sql 语句。但是对于 gorm 而言,还要和类似于 sql 语句打交道。只是可以在快速开过程中实现针对业务逻辑的构建。在原型构建阶段很适用,后续在逐步提高性能。