0. ORM
...小于 1 分钟
1. ORM
对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。
数据库 | 面向对象的编程语言 |
---|---|
表(table) | 类(class/struct) |
记录(record, row) | 对象 (object) |
字段(field, column) | 对象属性(attribute) |
2. ORM 框架
ORM 框架相当于对象和数据库中间的一个桥梁,借助 ORM 可以避免写繁琐的 SQL 语言,仅仅通过操作具体的对象,就能够完成对关系型数据库的操作。
因为ORM框架是通用的,需要将任何对象转换成数据库记录,此时需要用到 Golang 的反射机制来实现。
此外,设计框架需要考虑诸多问题:
- 如何适配不同的数据库
- 若对象发生改变,能否自动更新数据表,即数据库的自动迁移(migrate)
- 如何支持事物(transaction)
- ...
3. GeeORM
Reference
Powered by Waline v2.15.2