美文网首页全栈工程师修炼之路
使用 Node.js + Express+MySQL 实现简单的

使用 Node.js + Express+MySQL 实现简单的

作者: siberiawolf0307 | 来源:发表于2018-11-23 23:31 被阅读17次

    在上篇文章 使用 Node.js + Express开发服务端 我们已经学习了NodeJS+Express基本用法,你可能会记得我们的API接口返回的数据是假数 据并没有关联数据查询。在本篇文章中我们将实现基本的数据交互并实现简单 的增删改查。如果你还未阅读上篇文章请移步阅读~~~

    1. 准备工作

    首先我们使用Express生成一个空的Express项目

    cd /Users/SPRINT/Desktop 进入桌面
    express MysqlDemo 生成一个MysqlDemo项目
    cd MysqlDemo/  进入项目根目录
    npm install 安装依赖模块
    npm start 启动服务器
    

    启动完成后如果没有错误发生访问 http://localhost:3000/ 将看到 Welcome to Express 信息。

    2. 配置MySQL

    确保你电脑中已安装了MySQL环境,我们使用的IDE为MySQLWorkbench. 首先我们新建一个Connection

    1

    打开刚刚新建的Connection并新一个数据库并命名为 ExpressDB

    2

    接下来我们新建一个 Table 并命名为 User

    3

    从上图看到我们增加了两列

    uid INT(11) 用户id
    userName VARCHAR(25) 用户姓名
    

    Mysql的准备到此就准备完成,接下来是我们本篇教程的重点,怎样使用NodeJS+Express链接Mysql。

    3. 安装MySQL模块

    打开我们刚刚创建的 MysqlDemo 工程 这里我推荐使用WebStorm 或者 HBuilder 作为演示我们使用 WebStorm 打开工程

    4

    首先我们打开 package.json 在 dependencies 选项中添加

    "mysql": "latest"
    

    接着执行如下命令

     npm install 安装mysql依赖
     npm start 启动服务器
    

    接着我们向工程中添加一个 db 目录 用于存放MySQL配置信息
    并在 db 目录总新建一个 DBConfig.js 文件并添加如下内容

    module.exports =
     {  
                 mysql: {   
                             host: '127.0.0.1',     
                             user: 'root',   
                             password: '你的数据库Coonection密码',  
                             database:'ExpressDB', // 前面建的user表位于这个数据库中 
                              port: 3306  
                        }
     };
    

    完成后工程目前的结构如下

    5
    1. 添加API接口调用SQL语句
      紧接着我们继续在 db目录中添加 usersql.js 并键入如下内容
    var UserSQL = {  
                    insert:'INSERT INTO User(uid,userName) VALUES(?,?)', 
                    queryAll:'SELECT * FROM User',  
                    getUserById:'SELECT * FROM User WHERE uid = ? ',
                  };
     module.exports = UserSQL;
    

    usersql.js 的主要作用是提供增删改查sql语句。

    紧接着我们还需要在 routes 目录中添加一个users.js 向外暴露我们操作 User 的API接口。
    为了添加测试数据暂时向 users.js 中添加一个 addUser 接口 内容如下

    var express = require('express');
    var router = express.Router();
    // 导入MySQL模块
    var mysql = require('mysql');
    var dbConfig = require('../db/DBConfig');
    var userSQL = require('../db/Usersql');
    // 使用DBConfig.js的配置信息创建一个MySQL连接池
    var pool = mysql.createPool( dbConfig.mysql );
    // 响应一个JSON数据
    var responseJSON = function (res, ret) {
         if(typeof ret === 'undefined') { 
              res.json({     code:'-200',     msg: '操作失败'   
            }); 
        } else { 
          res.json(ret); 
      }};
    // 添加用户
    router.get('/addUser', function(req, res, next){
     // 从连接池获取连接 
    pool.getConnection(function(err, connection) { 
    // 获取前台页面传过来的参数  
     var param = req.query || req.params;   
    // 建立连接 增加一个用户信息 
    connection.query(userSQL.insert, [param.uid,param.name], function(err, result) {
            if(result) {      
                 result = {   
                          code: 200,   
                         msg:'增加成功'
                 };  
            }     
              
         // 以json形式,把操作结果返回给前台页面     
           responseJSON(res, result);   
    
         // 释放连接  
          connection.release();  
    
           });
        });
     });
    module.exports = router;
    

    重点内容已添加了注释,接着我们重新启动服务器 在浏览器访问

    http://localhost:3000/users/addUser?uid=4&name=helloMySQL

    如果添加成功页面将会输出

    {"code":200,"msg":"增加成功"}


    文章来源:使用 Node.js + Express+MySQL 实现简单的增删改查

    因为我觉得以后可能会用到这个技术,虽然现在我不需要链接MySQL做一些东西,但是这篇文章整理的还不错。特此做个笔记。

    另外文中的步骤我没有验证过,如果以后需要用到,再测试吧。

    相关文章

      网友评论

        本文标题:使用 Node.js + Express+MySQL 实现简单的

        本文链接:https://www.haomeiwen.com/subject/zhteqqtx.html