xhrr

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...)
}    

//托管静态资源
app.use(\'/assets\',express.static(\'./view/assets\'))
app.use(\'/node_modules\', express.static(\'./node_modules\'));

//注册body-parser中间件(body-parse用来专门处理post请求的数据)
const bp = require(\'body-parser\');
app.use(bp.urlencoded({extended: false}));

//注册中间件
//配置模板引擎
app.engine(\'html\', require(\'express-art-template\'));

//4. 加载路由模块
const router = require(\'./router.js\');
app.use(router);
 

  使用系统模块提供的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)
})
//导出
module.exports = conn

  通配符模式

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

 

分类:

技术点:

相关文章: