node+express controller

简介: Node + Express Controller

/**

  • description:用户
  • createTime: 2018-11-02
  • message: 不接受任何私下吐槽,直接提出意见即可(欢迎大家多多指教)

*/

const _ = require('lodash');

const DB = require('../../config/DBHelp.js');

/**

  • 返回的状态信息

*/

const resultData = {code: '', data: '', message:''}

// 处理数据库操作成功后

const handleResultSuccess = (response, results) =>{undefined

resultData.code= results.code|| null;

resultData.data= results.data|| null;

resultData.message= results.message|| null;

response.end(JSON.stringify(resultData));

}

const handleResultError = (response, error) =>{undefined

resultData.code= error.code;

resultData.data= '';

resultData.message= error.sqlMessage;

response.end(JSON.stringify(resultData));

}

class userController {undefined

/**

* 添加用户

* @param request
  • @param response
  • @param next

*/

static add(request, response, next) {undefined

    const data = request.body;

    const SQL_ = 'SELECT * FROM user WHERE user_name='+JSON.stringify(data.user_name);

    const SQL = 'INSERT INTO user (user_name, user_password, remarks) VALUES (?,?,?)';

    const SQL_DATA = [data.user_name, data.user_password, data.remarks];

    // 判断用户是否存在SELECT * FROM `user` WHERE user_name='donglei'

    DB(SQL_).then(results=>{undefined

      if (results.length== 0) {undefined

          DB(SQL, SQL_DATA).then(results=> {undefined

              results.code= '200';

              results.message= '成功';

              handleResultSuccess(response, results);

          }).catch(error=> {undefined

              handleResultError(response, error);

          });

      } else {undefined

          results.message= '该用户已经存在';

          handleResultSuccess(response, results);

      }

    }).catch(error=>{undefined

        handleResultError(response, error);

    })

};





/**

* 删除用户

* @param request
  • @param response
  • @param next

*/

static delete(request, response, next) {undefined

    const data = request.query;

    const SQL = 'DELETE FROM user WHERE user_id='+data.user_id

DB(SQL).then(results=>{undefined

        results.code= '200';

        results.message= '成功';

        handleResultSuccess(response, results);

    }).catch(error=>{undefined

        handleResultError(response, error);

    })

};



/**

* 用户修改

* @param request
  • @param response
  • @param next

*/

static update (request, response, next) {undefined

    const data = request.body;

    let SQL = 'UPDATE user SET ';

    // 遍历拼接生成SQL语句

    _.forEach(data, (val, key) =>{undefined

        val= JSON.stringify(val)

        if (key!= 'user_id'){undefined

            SQL = SQL + key+'='+val+',';

        } else {undefined

            // 去掉最后一次拼接的逗号

            SQL = SQL.substring(0,SQL.length-1);

            SQL = SQL + ' WHERE ' + key+'='+val;

        }

    });

    DB(SQL).then(results=>{undefined

        results.code= '200';

        results.message= '成功';

        handleResultSuccess(response, results);

    }).catch(error=>{undefined

        handleResultError(response, error);

    })

};



/**

* 获取用户列表

* @param request
  • @param response
  • @param next

*/

static list(request, response, next) {undefined

    const SQL = 'SELECT * FROM user';

    DB(SQL).then(results=> {undefined

        results.code= '200';

        results.data= results;

        results.message= '成功';

        handleResultSuccess(response, results);

    }).catch(error=> {undefined

        handleResultError(response, error);

    });

};



/**

* 用户查找

* @param request
  • @param response
  • @param next

*/

static find(request, response, next) {undefined

    const data = request.query;

    // SQL 语句

    let SQL = 'SELECT * FROM user WHERE user_id='+data.user_id;

    console.log(SQL)

    DB(SQL).then(results=> {undefined

        results.code= '200';

        results.data= results;

        results.message= '成功';

        handleResultSuccess(response, results);

    }).catch(error=> {undefined

        handleResultError(response, error);

    })

};

}

相关文章
|
2月前
|
Web App开发 JSON JavaScript
Node.js 中的中间件机制与 Express 应用
Node.js 中的中间件机制与 Express 应用
|
2月前
|
缓存 负载均衡 JavaScript
构建高效后端服务:Node.js与Express框架实践
在数字化时代的浪潮中,后端服务的重要性不言而喻。本文将通过深入浅出的方式介绍如何利用Node.js及其强大的Express框架来搭建一个高效的后端服务。我们将从零开始,逐步深入,不仅涉及基础的代码编写,更会探讨如何优化性能和处理高并发场景。无论你是后端新手还是希望提高现有技能的开发者,这篇文章都将为你提供宝贵的知识和启示。
|
2月前
|
JavaScript
使用node.js搭建一个express后端服务器
Express 是 Node.js 的一个库,用于搭建后端服务器。本文将指导你从零开始构建一个简易的 Express 服务器,包括项目初始化、代码编写、服务启动与项目结构优化。通过创建 handler 和 router 文件夹分离路由和处理逻辑,使项目更清晰易维护。最后,通过 Postman 测试确保服务正常运行。
109 1
|
2月前
|
JavaScript 中间件 关系型数据库
构建高效的后端服务:Node.js 与 Express 的实践指南
在后端开发领域,Node.js 与 Express 的组合因其轻量级和高效性而广受欢迎。本文将深入探讨如何利用这一组合构建高性能的后端服务。我们将从 Node.js 的事件驱动和非阻塞 I/O 模型出发,解释其如何优化网络请求处理。接着,通过 Express 框架的简洁 API,展示如何快速搭建 RESTful API。文章还将涉及中间件的使用,以及如何结合 MySQL 数据库进行数据操作。最后,我们将讨论性能优化技巧,包括异步编程模式和缓存策略,以确保服务的稳定性和扩展性。
|
2月前
|
Web App开发 JavaScript 前端开发
探索后端开发:Node.js与Express的完美结合
【10月更文挑战第33天】本文将带领读者深入了解Node.js和Express的强强联手,通过实际案例揭示它们如何简化后端开发流程,提升应用性能。我们将一起探索这两个技术的核心概念、优势以及它们如何共同作用于现代Web开发中。准备好,让我们一起开启这场技术之旅!
64 0
|
2月前
|
Web App开发 JavaScript 前端开发
构建高效后端服务:Node.js与Express框架的实践
【10月更文挑战第33天】在数字化时代的浪潮中,后端服务的效率和可靠性成为企业竞争的关键。本文将深入探讨如何利用Node.js和Express框架构建高效且易于维护的后端服务。通过实践案例和代码示例,我们将揭示这一组合如何简化开发流程、优化性能,并提升用户体验。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的见解和实用技巧。
|
2月前
|
Web App开发 JavaScript 中间件
构建高效后端服务:Node.js与Express框架的融合之道
【10月更文挑战第31天】在追求快速、灵活和高效的后端开发领域,Node.js与Express框架的结合如同咖啡遇见了奶油——完美融合。本文将带你探索这一组合如何让后端服务搭建变得既轻松又充满乐趣,同时确保你的应用能够以光速运行。
44 0
|
7天前
|
JavaScript
nodejs安装之npm ERR! code CERT_HAS_EXPIREDnpm ERR! errno CERT_HAS_EXPIRED reason: certificate has expired-证书错误通用问题解决方案-优雅草央千澈
nodejs安装之npm ERR! code CERT_HAS_EXPIREDnpm ERR! errno CERT_HAS_EXPIRED reason: certificate has expired-证书错误通用问题解决方案-优雅草央千澈
|
2月前
|
Web App开发 JavaScript 前端开发
2024年5月node.js安装(winmac系统)保姆级教程
本篇博客为2024年5月版Node.js安装教程,适用于Windows和Mac系统。作者是一名熟悉JavaScript与Vue的大一学生,分享了Node.js的基本介绍、下载链接及简单安装步骤。安装完成后,通过终端命令`node -v`验证版本即可确认安装成功。欢迎关注作者,获取更多技术文章。
38 2
2024年5月node.js安装(winmac系统)保姆级教程
|
2月前
|
存储 JavaScript 搜索推荐
Node框架的安装和配置方法
安装 Node 框架是进行 Node 开发的第一步,通过正确的安装和配置,可以为后续的开发工作提供良好的基础。在安装过程中,需要仔细阅读相关文档和提示,遇到问题及时解决,以确保安装顺利完成。
134 2