使用 Express.js+Sequelize 构建 ORM 应用

阅读时长 6 分钟读完

什么是 ORM?

ORM 是一种将对象模型与数据库模型进行映射的技术,它可以将数据库中的表映射成为代码中的对象,从而简化开发人员的工作。使用 ORM 可以使开发人员更加专注于业务逻辑的开发,而无需关注数据库的细节。

Express.js

Express.js 是一个 Node.js Web 应用程序框架,它可以帮助开发人员更加轻松地构建 Web 应用程序。使用 Express.js 可以快速构建一个 Web 服务器,并提供了很多功能强大的中间件(middleware)来简化开发过程。

Sequelize

Sequelize 是一个 Node.js ORM(Object-Relational Mapping)库,它支持使用多种数据库,包括 MySQL、PostgreSQL 和 SQLite,它可以将数据库表映射成为代码中的 JavaScript 对象,从而使开发人员可以更容易地与数据库交互。

构建 ORM 应用

安装 Express.js 和 Sequelize

首先,我们需要安装 Express.js 和 Sequelize:

其中,mysql2 是 MySQL 的 Node.js 驱动程序。

创建 Express 应用

接下来,我们可以创建一个基本的 Express 应用程序,代码如下:

-- -------------------- ---- -------
----- ------- - -------------------
----- --- - ----------

------------ ----- ---- -- -
  --------------- ---------
---

---------------- -- -- -
  -------------------- --- --------- -- ---- --------
---

上述代码创建了一个 Express 应用程序,并在访问根路径时返回了一个“Hello World!”消息。

创建 Sequelize 模型

我们想要在应用程序中使用 Sequelize,需要首先定义模型。模型是一个表示数据库表的类,它通过定义模型字段和关联来描述数据库表的结构。

在这个例子中,我们创建一个名为“User”的模型,代码如下:

-- -------------------- ---- -------
----- - ---------- --------- - - ---------------------
----- --------- - --- -------------------------------------------------

----- ---- - ------------------------ -
  ---------- -
    ----- -----------------
    ---------- -----
  --
  --------- -
    ----- ----------------
  --
  ---- -
    ----- ------------------
    ---------- -----
  -
---

----------------
  -------- -- -
    --------------------- --- ------ ----------
  ---

上述代码使用 Sequelize 和 mysql2 驱动程序创建了一个名为“User”的模型,并定义了三个字段:firstName、lastName 和 age。其中,firstName 和 age 字段是必填的,而 lastName 字段是可选的。这个模型将映射到数据库中名为“users”的表。

创建 Express 控制器

接下来,我们可以创建一个控制器来处理 HTTP 请求。以下代码显示了如何创建一个名为“users”的控制器:

-- -------------------- ---- -------
----- ------- - -------------------
----- ------ - -----------------
----- - ---- - - ----------------------------

-- --- --- -----
--------------- ------------- ---- -
  --------------
    ----------- -- -
      ----------------
    --
    ------------ -- -
      ----------------------------
    ---
---

-- ------ - --- ----
---------------- ------------- ---- -
  -------------
    ---------- -------------------
    --------- ------------------
    ---- ------------
  --
    ---------- -- -
      ---------------
    --
    ------------ -- -
      ----------------------------
    ---
---

-------------- - -------

上述代码创建了一个 Express 路由器(router),并为“/users”路径设置了两个路由方法,/GET 和 /POST。/GET 路由器用于获取所有用户,而 /POST 路由器用于创建一个新用户。这些路由器方法使用 Sequelize 模型来与数据库交互。

将控制器添加到 Express 应用程序中

最后,我们需要将路由器添加到应用程序中:

-- -------------------- ---- -------
----- ------- - -------------------
----- --- - ----------
----- ---------- - -----------------------
----- ---------- - ---------------------------------

---------------------------
----------------- ------------

---------------- -- -- -
  -------------------- --- --------- -- ---- --------
---

上述代码将 bodyParser 中间件用于解析 HTTP 请求正文,并将 /users 路径设置为 userRouter 路由器。

运行应用程序

现在,我们已经创建了基础的应用程序。如果您想在本地运行它,只需要运行以下命令:

总结

借助 Express.js 和 Sequelize,我们可以在很短的时间内构建出一个功能强大的 ORM 应用程序。通过在 Express 应用程序中使用 Sequelize,我们可以轻松地管理数据库和处理 HTTP 请求。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6467c788968c7c53b0817a8d

纠错
反馈