node从搭建运行项目整体流程
1. 初始化配置基本信息:
npm init (自定义配置)
npm init -y (一切配置采用默认值)
在当前目录产生package.json文件,有一个dependencies用来记录该项目所有依赖包
2.搭建服务器(在入口文件中app.js)
使用express框架(npm i express 下载该模块)
//加载express
const express = require('express')
//创建express服务器
const app = express()
//开启服务器(端口号随意此处为3000)
const.listen(3000, () => {
//搭建成功后的提示信息
console.log('server is running...)
}
使用系统模块提供的http模块
const http = require('http')
//创建服务器实例
const server = http.createServer()
//开启服务
server.listen(3000, ()=>{
console.log('server is reunning...')
}
//客户端请求事件,监听客户端请求
//当用户请求require页时,在页面上返回'hellow'
server.on('request', (req, res) => {
res.end('hellow')
}
3. 使用mysql模块,封装数据库文件(db.js)
mysql是一个第三方模块,提供对数据库增删改
const mysql = require('mysql')
//创建连接对象
const conn = mysql.createConnection({
host: '127.0.0.1',
user: 'root',
password: 'root',
port: 3333, // 端口号
database: 'aaa' //要操作的数据库
})
//连接mysql服务器
conn.connect();
//执行sql语句
const sql = 'select * from hero'
//添加insert into hero value(null, '武则天','朕很中意你','2018-2-2')
//删除insert into hero value(null, '武则天','朕很中意你','2018-2-2')
//修改update hero set name='张三', content='大傻子' where id = 1
conn.query(sql,(err,result,field)=>{
if(err){
return console.log(err)
}
console.log(result)
})
通配符模式
const sql = "update hero set ? where hero_id=?"
const obj = {
hero_name: '圣诞快乐',
hero_age: 22
}
conn.query(sql,[obj,2],(err,result)=>{
//。。。。
}
4. 路由模块
const express = require('express')
const path = require('path')
const db = require('./db.js')
const router = express.Router()
//加载控制器
// const jq_c = require('./jq_controller.js')
//监听浏览器请求
//美食
router.get('/meishi',(req, res) => {
const sql = 'select * from MS'
db.query(sql, (err, result) => {
if(err){
console.log(err)
}
console.log(result)
res.render(path.join(__dirname, 'view/jqhtml','meishi.html'),{list: result})
})
// res.end('sadasdasd')
})
module.exports = router;
5.运行
命令窗口node app.js
node从搭建运行项目整体流程的更多相关文章
- Eclipse搭建maven项目的流程,聚合所有的子模块项目
Eclipse搭建maven项目的流程 2018年03月01日 15:47:03 阅读数:22 1:搭建parent工程,用来聚合所有的子模块项目 2:搭建公共使用的模块common 这里你要点击空白 ...
- node + express搭建api项目
express框架 描述 express是一个保持最小规模的灵活的 Node.js Web 应用程序开发框架,为 Web 和移动应用程序提供一组强大的功能. 安装 // 1.使用npm淘宝镜像--cn ...
- ubuntu 14.04搭建PHP项目基本流程
首先准备需要安装东西的列表1.apache服务器,2.php,3.mysql,4.几个软件包的链接包,安装方式是以apt-get方式安装; 1.安装apache服务器: apt-get install ...
- Eclipse 添加本地 SVN插件以及运行项目的流程
去网上下载SVN插件包.里面包含文件如图: 把features和plugins文件夹里面的东西全部复制粘贴到eclipse安装目录下的features和plugins文件夹中就行.然后重启eclips ...
- 从零构建vue项目(一)--搭建node环境,拉取项目模板
本文是基于vuecli2搭建的项目. 1. 下载安装nodejs 地址:https://nodejs.org/en/download/ 选择安装版windows .msi, 不要选择压缩版 下 ...
- 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之六 || API项目整体搭建 6.1 仓储模式
前言 1.@LearningCoding 小伙伴关于用Sqlsugar在mysql数据库上的研究成果: sqlsugarcore支持mysql等数据库,在DbContext里面只需要设置dbtype为 ...
- 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之七 || API项目整体搭建 6.2 轻量级ORM
更新 1.在使用的时候,特别是更新数据的时候,如果不知道哪里有问题,可以查看数据库 和 实体类 的字段,是否大小写一致,比如 name 和 Name 2.在使用Sqlsugar 的 CodeFirst ...
- vue--环境搭建(创建运行项目)
如何搭建vue环境: 1.安装之前必须要安装 node.js 2.搭建Vue环境,安装vue的脚手架工具 npm install --global vue-cli / cnpm install --g ...
- 【Vue】环境搭建、项目创建及运行
一.软件下载 1. 进入官网https://nodejs.org/en/下周node.js,傻瓜式安装步骤(一直下一步就好) 2. 进入官网http://www.dcloud.io/下载并安装编辑器H ...
随机推荐
- zabbix监控 linux/windows 主机tcp连接状态
更新内容:1).增加了对windows主机的tcp连接状态的监控2).修改linux主机的监控配置,使linux与windwos主机能够使用相同的模板tcp的连接状态对于监控服务器,尤其是Web服务器 ...
- 使用PowerShell批量注册DLL到GAC
一段很小的代码,注册当前目录下所有的DLL到GAC,请先把gacutil.exe复制到同一个目录. $Path = Get-Location $Dir = Get-ChildItem "$P ...
- codeforces 407D Largest Submatrix 3
codeforces 407D Largest Submatrix 3 题意 找出最大子矩阵,须满足矩阵内的元素互不相等. 题解 官方做法 http://codeforces.com/blog/ent ...
- codeforces 811E Vladik and Entertaining Flags(线段树+并查集)
codeforces 811E Vladik and Entertaining Flags 题面 \(n*m(1<=n<=10, 1<=m<=1e5)\)的棋盘,每个格子有一个 ...
- 2、Python文件操作工具 xlrd 工具
#打开excel文档workbook = xlrd.open_workbook('..\cye.xls',encoding_override='utf-8') #获取sheet页信息sheet = w ...
- 一句话解释:C2C / B2C / O2O / B2B
C2C (Customers To Customers):个人到个人,就是我卖东西你来买B2C (Business To Customers):公司到个人,就是我成立个公司卖东西,你来买O2O (On ...
- yii2.0 rules 规则中场景验证字段
除了app场景以外的其他场景都验证uid字段['uid', 'required','except'=>'app', 'message' => '参数错误'], 只有app场景验证uid字段 ...
- [Python 多线程] asyncio (十六)
asyncio 该模块是3.4版本加入的新功能. 先来看一个例子: def a(): for x in range(3): print('a.x', x) def b(): for x in 'abc ...
- browserify文件后函数调用报is not defined的原因
举个例子: a.js ; module.exports.a = a; b.js var result = require('./a'); var getA =() => { console.lo ...
- sqoop2启动client异常
java环境: java version "10.0.1" ,启动sqoop-shell端或者是sqoop-client端异常,异常如下: [root@hadoop1 home] ...