npm 包 @qogni/hapi-sequelize 使用教程

阅读时长 5 分钟读完

前言

Node.js 是一个使用 JavaScript 编写的服务器端运行环境,它使用事件驱动、非阻塞 I/O 模型为开发人员提供了高效率的异步编程接口,而 SQL 作为更稳定和成熟的数据存储方式,也是我们常用的一种数据存储方式之一。

然而,在 Node.js 中,直接使用 SQL 进行数据存储操作也不是特别方便,需要基于一些高层次的库进行操作。One of those libraries is Sequelize,是一个支持 PostgreSQL、MySQL、SQLite 和 MSSQL 的基于 Promise 的 ORM,它提供了简化和优化 SQL 查询操作的一系列接口,极大地提高了开发效率和代码质量。

本文将介绍一种在 Node.js Web 应用框架 Hapi 中快速集成 Sequelize 进行数据库操作的方式,那就是 @qogni/hapi-sequelize npm 包。

@qogni/hapi-sequelize 包简介

@qogni/hapi-sequelize 包是在 Hapi Web 应用框架中集成 Sequelize ORM 的扩展插件,它提供了常用的 ORM 接口,能够提高开发效率,使得开发者可以专注于业务逻辑的实现,减少代码量。

@qogni/hapi-sequelize 包具有以下特点:

  • 支持数据库连接池;
  • 支持多个 Sequelize 实例,多个数据库同时操作;
  • 自动记录 Sequelize 实例,全局注入,可直接使用;
  • 提供内置接口提供一致的 ORM 管理,Lodash 来帮助同步、异步和批量处理查询和操作翻译。

@qogni/hapi-sequelize 使用教程

安装

使用 npm 安装 @qogni/hapi-sequelize 包:

配置

在 Hapi.js 服务的启动脚本中导入相应的模块,使用 @qogni/hapi-sequelize 插件注入 Sequelize 实例,节省了连接 Sequelize 实例的代码。

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

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

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

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

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

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

-------

在 options 中,我们指定了以下几个参数:

  1. name: Sequelize 实例的别名,db
  2. models:返回 Sequelize models 的方法,这里是 models 加载器的返回对象。
  3. sequelize:Sequelize 连接信息,包括 MySQL 的基本配置,数据表信息等等。

使用

在控制器中直接使用 db.asInstanceOfJS.Sequelize 中内置的 ORM 接口操作数据,ORM的具体使用可以参考 Sequelize 官方文档。

下面是一个简单的示例代码:

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

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

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

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

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

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

完整项目源码请访问:https://github.com/Niupiao/sequelize-hapi-demo。

总结

@qogni/hapi-sequelize 是一个在 Hapi 中集成 Sequelize ORM 的插件,它提供了常用的 ORM 接口,能够提高开发效率,使开发人员可以更加专注于业务逻辑的实现,减少代码量。

本文介绍了如何在 Hapi 服务中使用 @qogni/hapi-sequelize 包进行 ORM 操作,简单易懂,不仅适合初学者,也适合正在使用 Sequelize 进行 Node.js 开发的开发者。

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

纠错
反馈