随着前端Web应用的多样化和商业化,越来越多的前端开发者需要接触数据库编程以满足业务需求。Hapi 框架是一套非常灵活、可扩展性强的 Node.js Web 应用框架,而 Sequelize 是一套基于 Promise(即 ES6 标准中的异步解决方案)的 Node.js ORM 框架。这篇文章旨在介绍 Hapi 框架集成 Sequelize 实现 MySQL 数据库操作的详细步骤,帮助前端开发者快速上手和应用。
1. Hapi 框架环境搭建
请务必先安装 Node.js 常用工具和 Hapi 框架。在控制台中执行以下命令:
npm install -g nodemon npm install @hapi/hapi
2. 创建数据库和数据表
在 MySQL 中创建一个新的名为 test
的数据库,并创建一张名为 users
的数据表,字段如下:
字段名 | 类型 | 长度 | 说明 |
---|---|---|---|
id | INT | 11 | 自增主键 |
username | VARCHAR | 64 | 用户名 |
password | VARCHAR | 64 | 密码 |
3. Sequelize ORM 环境搭建
接下来,我们需要安装 sequelize 和 mysql2 两个模块:
npm install sequelize npm install mysql2
创建一个新的名为 models
的目录,并在该目录下创建一个新的名为 user.js
的文件,输入以下代码:
-- -------------------- ---- ------- ----- --------- - --------------------- ----- --------- - --- ----------------- ------- ----- - ----- ------------ -------- -------- ----- - ---- -- ---- --- ----- ----- -- -------- ----- --- ----- ---- - ------------------------- - --- - ----- ---------------------- ------ ----- ----------- ----- -------------- ---- -- --------- --------------------- --------- -------------------- --- -------------- - -----
该文件导出了一个 User
对象,其中定义了 users
表的字段和数据类型。
4. 在 Hapi 中使用 Sequelize
在 Hapi Web 应用中创建一个新的 endpoint,该 endpoint 会通过 Sequelize 模块查询 MySQL 数据库中的 users
表。在控制台中执行以下命令:
npm install @hapi/vision npm install @hapi/inert
创建一个新的名为 server.js
的文件,输入以下代码:
-- -------------------- ---- ------- ----- ---- - ---------------------- ----- --- - --------------- ----- ---- - ---------------------------- ----- ------ - --- ------------- ----- ------------ ----- ---- --- -------------- ------- ------ ----- ---- -------- ----- --------- -- -- - --- - ----- ----- - ----- --------------- ------ --------------- - ------ ----- --- - ----- ----- - ------ --------------- - ------ --- --- - - --- ----- -------- ------ - ----- ----------------------------------------- ----- ---------------------------------------- -------------- -------- - ----- --------------------- -- ----- --------- - -------- --- ----- --------------- ------------------- ------- --- --------------------- - -------------------------------- ----- -- - ----------------- ---------------- --- -------
该文件中创建了一个 GET 请求的 endpoint,通过 User.findAll()
方法来查询 users
表,数据成功返回后在 Hapi 中渲染出使用 handlebars 模板引擎的 html 文件。
之后,在与 server.js
同级的目录下创建一个名为 views
的目录,在 views
目录中创建一份名为 index.html
的模板文件,输入以下代码:
-- -------------------- ---- ------- --------- ----- ----- ---------- ------ ----- ---------------- ----- --------------- ---------------------------- ------------------- ----- ---------------------------- ------------------ ----------- - --------- ------------ ------- ------ ---- ------- ------- ------- -- ------- --- --------- -- ------------- --- --------- -- ------------- ------- --------- ----- ------- -------
最后,在控制台中执行以下命令,运行 Web 应用程序:
nodemon server.js
在浏览器中访问 http://localhost:3000/
,将可以看到查询的结果。恭喜,您创建了一个 Hapi + Sequelize 的 MySQL 数据库 Web 应用程序!
总结
本篇文章介绍了如何使用 Hapi 框架集成 Sequelize 实现 MySQL 数据库操作的详细步骤。现在,您可以利用所学到的技能来应对实际业务中的数据存储与操作需求。感谢您的阅读!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64607654968c7c53b0223be3