简介
Fastify 是一个快速、低开销、功能齐全的 Web 框架,由其灵活性,用户可对其进行高度定制。Typeorm 可以运行在浏览器、Node.js、Cordova、PhoneGap、React Native 等各种平台上,并且支持 TypeScript。这篇文章将带你了解如何使用 Fastify 和 Typeorm 连接 Node.js。
安装
首先,我们需要使用以下命令安装 Fastify 和 Typeorm:
--- ------- ------- ------- ----------------
连接数据库
在代码中,我们需要导入 Typeorm:
------ - ---------------- - ---- ----------
然后,我们可以使用 Typeorm 的 createConnection
函数来连接数据库:
------------------ ----- -------- ----- ------------ ----- ----- --------- ------- --------- ------- --------- -------- --------- ---------- - ------------------ ------------ ----- -- -------- -- - --------------------- ---------- --------------- -- -------------- -- - --------------------- ---------- ---------- ------------------- ---
以上代码会尝试连接一个 MySQL 数据库,配置项中的 entities
属性则用来指定需要创建的实体类。
创建实体类
在 Typeorm 中,我们使用实体类来表示数据库中的表。在这个例子中,我们将创建一个用户表:
------ - ------- ------- ---------------------- - ---- ---------- --------- ------ ----- ---- - ------------------------- --- ------- --------- ----- ------- --------- ------ ------- --------- -------- ---- -- --------- -------- -
以上代码中,我们使用 @Entity
装饰器来定义实体类,使用 @PrimaryGeneratedColumn
和 @Column
装饰器来定义列属性。
使用 Fastify 创建路由
接下来,我们将使用 Fastify 创建一个路由处理 HTTP 请求:
------ - -- ------- ---- ---------- ------ - -------------- - ---- ------------------------------- ----- --- - --------- ------- ---- --- ----------------------------- ---------------- ----- -------- -- - -- ----- - ------------------- ---------------- - ------------------- --------- -- ------------- ---
在上述代码中,我们使用 fastify
模块来创建一个应用程序实例,并使用 UserController
注册路由处理器。
创建控制器
在 Node.js 中,我们使用控制器来解析路由,处理 HTTP 请求以及返回 HTTP 响应结果。以下是 UserController
的代码:
------ - ----------- --- - ---- --------------------- ------ - ------------- - ---- ---------- ------ - ---- - ---- ------------------- --------------------- ------ ----- -------------- - --------- ----- -------- - ----- -------------- - -------------------- ----- ----- - ----- ---------------------- ------ ------ - -
控制器使用 @Controller
装饰器定义了路由路径。此处我们定义了一个路由 /users
,并在 @Get
装饰器中指定了 HTTP 方法为 GET。
在 getAll
方法中,我们使用 getRepository
函数从 Typeorm 中获取 User
实体类的仓库,并使用其 find
方法查找所有用户。
总结
这篇文章介绍了如何使用 Fastify 和 Typeorm 进行数据库连接、定义实体类和创建路由和控制器。我们希望读者在学习本文后可以顺利使用 Fastify 和 Typeorm 进行开发工作。
完整示例代码可以在以下链接获取:
https://github.com/Assistant-GitHub/Fastify-Typeorm-Mysql
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/65af62dcadd4f0e0ff8d0744