`
wyzxzws
  • 浏览: 394247 次
  • 性别: Icon_minigender_1
  • 来自: dazhou
社区版块
存档分类
最新评论

Nodjs尝试(Windows7)

阅读更多

刚忙完公司项目,把以前了解的nodejs实践一下:

把需要的包/模块安装上:

1、安装上nodejs
2、安装npm包---**这个非常重要**
3、安装开发模块:
    mysql---npm install [-g] node-mysql, npn install [-g] mysql
    express---npm install [-g] express
    jade---npm install [-g] jade[模板模块]
其他模块根据需求添加吧!
    

 根据了解的nodejs基础,列出需要注意的几点:

       

1、模块问题:---模块继承
    var Dao = function () {
        this.className = "Dao";
        var mysql = require('mysql');
       var pool = mysql.createPool({
           host: 'localhost',
           user: 'wenshuang3',
           password: '13746.com',
           database: 'cai',
           port: 3306
       });
       this.pool = pool;//连接池
       this.insert = function (params) {
       }; //插入
       this.update = function (params) {
       }; //更新
       this.delete = function (params) {
       }; //删除
       this.select = function (params) {
       }; //查询
   };
   module.exports = new Dao();
   ==================================

    var dao = require('./Dao');
    var UserDao = function() {
	    this.className = "UserDao";
    };
    UserDao.prototype = dao;
    module.exports = new UserDao();

 

2、router回调问题
    var express = require('express');
var router = express.Router();
var userService = require("../serv/service/impl/UserServiceImpl");
/* POST home page. */
router.post('/', function (req, res) {
    var name = req.body.name;
    var age = req.body.age;
    var opt = req.body.type.toString();
    console.log(name + "==" + age + "---" + opt);
    console.log(typeof opt + "---" + typeof "select" + "==" + (opt == "select" ));
    var send_data = {
        name: name,
        age: age,
        callback: function (data) {
            res.render('userinfo', data);
        }
    };
    if (opt == "insert") {
        console.log("insert...");
        userService.insert(send_data);
    } else if (opt == "update") {
        console.log("update...");
        userService.update(send_data);
    } else if (opt == "delete") {
        console.log("delete...");
        userService.delete(send_data);
    } else if (opt == "select") {
        console.log("select...");
        userService.select(send_data);
    } else {
        console.log("no opt...");
    }
});

module.exports = router;

================================================


/**
 * Created by wenshuang3 on 2014/9/11.
 */
var userDao = require('../UserDao');
var UserDaoImpl = function () {
    this.className = "UserDaoImpl";
};
UserDaoImpl.prototype = userDao;
UserDaoImpl.prototype.insert = function (params) {
    params = params || {};
    var callback = params.callback;
    console.log("UserDaoImpl insert...");
    var name = params.name, age = params.age;
    var selectSQL = 'insert into User(name,age) values("' + name + '",' + age + ')';
    var res_obj = {
        title: '用户添加',
        name: name,
        age: age,
        result: [],
        status: false
    };
    this.pool.getConnection(function (err, conn) {
        if (err) console.log("POOL ==> " + err);
        conn.query(selectSQL, function (err, rows) {
            if (err) console.log(err);
            console.log("INSERT ==> ");
            var responseHTML = "";
            conn.release();
            res_obj.result = rows;
            res_obj.status = true;
            callback ? callback(res_obj) : "";
        });
    });
};
UserDaoImpl.prototype.update = function (params) {
    console.log("UserDaoImpl update...");
    return true;
};
UserDaoImpl.prototype.delete = function (params) {
    console.log("UserDaoImpl delete...");
    return true;
};
UserDaoImpl.prototype.select = function (params) {
    params = params || {};
    console.log("UserDaoImpl select...");
    var name = params.name, age = params.age;
    var callback = params.callback;
    var selectSQL = 'select ' + (params.fields ? params.fields : "*") + ' from User' + (params.where ? params.where : "");
    console.log("selectSQL===" + selectSQL);
    var res_obj = {
        title: '用户查询',
        name: name,
        age: age,
        result: [],
        status: false
    };
    this.pool.getConnection(function (err, conn) {
        if (err) console.log("POOL ==> " + err);
        conn.query(selectSQL, function (err, rows) {
            if (err) console.log(err);
            console.log("SELECT ==> ");
            for (var i in rows) {
                console.log(rows[i]);
            }
            res_obj.result = rows;
            res_obj.status = true;
            conn.release();
            callback ? callback(res_obj) : "";
        });
    });
};
module.exports = new UserDaoImpl();

 暂时研究到这,在这只是基础研究,肯定有待深入,望文明吐槽、交流!

分享到:
评论

相关推荐

    Nodjs中文手册

    ### Nodjs中文手册知识点概览 #### 一、简介 - **Node.js** 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。它使用事件驱动、非阻塞 I/O 模型,使其轻量又高效,非常适合运行在分布式设备上构建可扩展的网络...

    Mqtt客户端 nodjs实现

    使用nodjs编写的MQTT客户端,实现模拟连续的数据发送(动态随机数据),默认访问的端口为1883,控制台操作

    maven和nodjs免安装包

    "node-v20.11.0-win-x86.zip"是Node.js的免安装版本,适用于Windows操作系统,x86架构。解压后,用户可以直接运行可执行文件,无需通过传统安装程序安装。 【NPM】:NPM是Node.js的包管理器,与Node.js一起使用,...

    node.js安装 Nodejs下载安装步骤(Windows环境)

    本文将详细介绍在 Windows 操作系统下安装 Node.js 的详细步骤。 一、下载 Node.js 1. 首先,访问 Node.js 的官方网站(https://nodejs.org/),这是获取最新稳定版 Node.js 的最可靠途径。 2. 在官网上,你会看到...

    cent6.5安装nodjs-v5.7.0及运行3个应用前端nodejs开发代码

    "cent6.5安装nodjs-v5.7.0及运行3个应用前端nodejs开发代码" 在本文中,我们将学习如何在CentOS 6.5上安装Node.js v5.7.0,并运行三个前端应用程序。 Node.js安装 Node.js是一个基于JavaScript的服务器端 ...

    ignite-nodjs-challenge-2

    标题 "ignite-nodjs-challenge-2" 暗示我们正在探讨一个关于Node.js的编程挑战,可能是某个在线课程或编程训练营的一部分。描述中的相同文本表明这可能是一个具体的项目或任务,专注于Node.js技术的某一方面。标签 ...

    Nodejs+Angular+Mongodb-Web-Demo

    这是一个基于Node.js、Angular和MongoDB构建的Web应用程序示例,我们将其称为“Nodejs+Angular+Mongodb-Web-Demo”。在这个项目中,你将看到如何整合这三种技术来创建一个功能丰富的交互式Web应用。...

    node-js安装包

    MSI(Microsoft Installer)是Windows操作系统上的一个标准安装包格式,它负责处理软件的安装、升级和卸载过程。用户需要先解压RAR文件,然后运行MSI安装程序来安装Node.js。 在安装Node.js的过程中,用户需要注意...

    项目之文章管理系统nodeJS_mogonDB学习笔记及源码.zip

    《Node.js + MongoDB 文章管理系统实现详解》 在IT领域,构建一个文章管理系统是一项常见的实践任务,它能够帮助我们组织和管理大量的文本信息。本文将深入探讨如何利用Node.js和MongoDB这两个强大的开源技术来创建...

    coffeechatter:使用 Node.js、Socket.IO 和 Dust.js 来组织办公室咖啡冲泡

    咖啡聊天 使用 Node.js、Socket.IO 和 Dust.js 来组织办公室咖啡冲泡 科技 - 服务器端休息 ... 注意:在 Ubuntu 上你需要输入“nodjs”而不是“node” 跑步 mkdir -p public/js/compiled node app.

    Nodejs_practice:此文件适用于所有文件系统在nodjs和全局范围内的nodjs等的工作

    ### 7. 模块封装 在"Nodejs_practice"项目中,你可能会创建自己的模块,通过`exports`或`module.exports`来导出功能,供其他文件使用。例如: ```javascript // util.js exports.readFileAsync = function ...

    在Centos部署nodejs的步骤

    ### 在Centos部署Node.js的步骤详解 #### 一、前言 随着Node.js的广泛应用,越来越多的开发者选择使用Node.js进行Web应用开发。而在实际生产环境中,CentOS作为一款稳定可靠的Linux发行版,常常被用作服务器操作...

    基于Vue和NodeJS的语音识别服务系统源码+运行说明(含交互界面+Azure接口对接一键部署).zip

    1.项目代码功能经验证ok,确保稳定可靠运行。欢迎下载使用! 2.主要针对各个计算机相关专业,包括计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师或企业员工使用。...

    node-live-reload:快速的Nodejs +套接字驱动的浏览器重新加载器,可满足您所有前端开发人员的需求

    节点实时重新加载0.3 快速的nodejs +基于套接字的浏览器重新加载器,可满足您所有前端开发人员的需求。 用法 通过npm npm install -g node-live-reload (确保全局安装) 将以下js添加到您的项目中 ...

    Microsoft Visual Studio使用NodeJS

    **Microsoft Visual Studio 使用 Node.js 全面指南** 在IT领域,Microsoft Visual Studio(VS)作为一款强大的集成开发环境(IDE),被广泛用于多种编程语言的开发,包括JavaScript及其流行的运行时环境Node.js。...

    这是一个基于node.js的抓取三方直播主播数据的服务器开源项目.zip

    软件开发设计:应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等语言的项目开发与学习资料 硬件与设备:单片机、EDA、proteus、RTOS、包括计算机硬件、服务器、网络设备、存储设备...

    node-v12.18.3-x64.rar

    如果你是一个前端程序员,你不懂得像PHP、Python或Ruby等动态编程语言,然后你想创建自己的服务,那么Node.js是一个非常好的选择。 当然,如果你是后端程序员,想部署一些高性能的服务,那么学习Node.js也是一个非常...

    chatroom_nodejs:nodjs 中的聊天室(websocket 和 expressjs)

    聊天室 nodejs;... 2个用户之间的私人聊天离开聊天室显示聊天室的历史记录(最后 10 条消息)。 显示正在写作的用户的姓名#Linux 上的安装和执行安装 NodeJS 和 npm 运行 'sudo npm install -d' 从 package.json 安装你...

    Nodjs_bellaviapp:Node.js商店管理网站src- bellaviapp.com

    7. **控制器(Controller)**:控制器处理路由的业务逻辑,调用模型并返回视图,是模型和视图间的桥梁。 8. **配置文件**:项目中可能包含环境变量配置(如`.env`文件),用于管理数据库连接字符串、API密钥等敏感...

Global site tag (gtag.js) - Google Analytics