TypeORM 是一种 Node.js 应用程序的 ORM 框架,可以帮助开发者更容易地与数据库进行交互。在本文中,我们将介绍如何在 Deno 中使用 TypeORM,详细了解其使用方法。
什么是 Deno?
Deno 是一种基于 V8 引擎的 TypeScript 运行时,它是 Node.js 的一种替代品。与 Node.js 不同,它内置了安全性功能,可以直接使用 TypeScript,并且支持在浏览器中直接调试 TypeScript 代码。相比之下,Node.js 在运行时需要使用 npm 来管理包和模块。尽管 Deno 还在开发中,在开发者社区中却有非常强烈的关注度。在使用 Deno 进行前端开发时,TypeORM 是一种非常理想的 ORM 框架。
TypeORM 简介
TypeORM 是一种支持 TypeScript 和 JavaScript 的 ORM 框架,用于简化与关系数据库的交互。它可以处理复杂的数据结构,支持关联、事务和查询,同时还支持多种数据库,如 MySQL、PostgreSQL、MongoDB 等。
使用 TypeORM 可以轻松进行数据处理,有了这个 ORM 框架,开发者可以更快,更轻松地实现数据库 CRUD 操作。TypeORM 同样支持包括 Deno 在内的多种环境,具有很强的跨平台性。
在 Deno 中使用 TypeORM
接下来,我们将介绍如何在 Deno 中使用 TypeORM。在接下来的步骤中,我们将一步步完成一个基本的 JavaScript 应用程序,并使用 TypeORM 与 MySQL 数据库交互。
安装 Deno
要成功运行 Deno 应用程序,首先需要安装 Deno。安装 Deno 可以使用以下命令:
curl -fsSL https://deno.land/x/install/install.sh | sh
或使用包管理器安装,如 Homebrew:
brew install deno
安装完成后,可以在终端中使用以下命令验证 Deno 是否已正确安装:
deno -v
如果安装成功,将输出 Deno 的版本号。
安装 TypeORM
要使用 TypeORM,需要先将其安装到项目中。可以使用以下命令将其安装为项目的依赖项:
npm install typeorm reflect-metadata mysql
注意,这里我们同时安装 reflect-metadata 和 mysql,这些都是直接使用 TypeORM 框架时所必须的。
连接到数据库
当安装好 TypeORM 和其他必需的库时,可以开始连接到数据库。以下是连接 MySQL 数据库的 TypeORM 设置:
-- -------------------- ---- ------- ------ - ---------------- - ---- ---------- ------------------ ----- -------- ----- ------------ ----- ----- --------- ----------- --------- ----------- --------- ---------------- --------- -------------------------- ---
在这里我们通过 createConnection
方法来创建一个连接。这个方法的参数里面包含了数据库连接的相关信息,比如 type
指定数据库的类型,host
指定主机地址,port
指定端口号等等,entities
指定 TypeORM entities 的位置。
除此之外,还可以使用其他的一些参数,例如 logging
来打印 SQL 查询日志,以及 synchronize
来自动创建表等。
值得注意的是,这里的 entities
参数指定了在程序中所使用的 entities 类的源文件路径。
-- -------------------- ---- ------- ------ - ------- ------- ---------------------- - ---- ---------- --------- ------ ----- ---- - ------------------------- --- ------- --------- ---------- ------- --------- --------- ------- -
创建实体
在 TypeORM 中,一个实体表示了一个数据库表的映射。实体使用装饰器来标记每个属性,以告诉 TypeORM 如何处理它们。以下是一个简单的实体定义,该实体用于表示用户信息:
-- -------------------- ---- ------- ------ - ------- ------- ---------------------- - ---- ---------- --------- ------ ----- ---- - ------------------------- --- ------- --------- ---------- ------- --------- --------- ------- -
在这个代码片段中,我们定义了一个名为 User 的实体,该实体包含了 id、firstName 和 lastName 字段,其中 id 是主键。
使用 Repository
Repository 是 TypeORM 的一个核心概念,它负责处理实体和数据库之间的交互。通过 Repository,可以进行 CRUD 操作。
以下是如何使用 Repository 进行查询操作的示例代码:
-- -------------------- ---- ------- ------ - ------------- - ---- ---------- ------ - ---- - ---- --------- -------------------------- ----- ---------- - ----- -- -- - ----- -------------- - -------------------- ----- ---- - --- ------- -------------- - ------- ------------- - ------- ----- -------------------------- -- ---------- ----- -------- - ----- -- -- - ----- -------------- - -------------------- ----- ----- - ----- ---------------------- ------------------- -- -------------------- -- ------------
在这个代码片段中,我们先通过 getRepository
方法获取到了 User 的 Repository,然后使用 save
方法来创建一个新的用户并将其存储在数据库中。接着使用 find
方法来查询数据库中的所有用户,并将其打印到控制台上。
到此为止,您已经学习了如何在 Deno 中使用 TypeORM 进行数据库的交互。借助该 ORM 框架,您可以更轻松地处理数据库,实现复杂的数据结构,支持关联、事务和查询。
总结
在本指南中,我们学习了如何在 Deno 中使用 TypeORM。我们了解了 TypeORM 的过程,并且通过一个简单的示例程序进行了操作演示,所有示例代码均可在我们的 GitHub 仓库中进行查看和下载。
虽然 TypeORM 在 Deno 中的使用方法类似于 Node.js,但与 Node.js 不同的是,这里合适的用法是直接在程序中引用库。希望读者在读完本篇文章后,能够更好地掌握 Deno 和 TypeORM,从而能够轻松地实现自己的项目。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64538b86968c7c53b07e128e