Node Js 入门(五)

res.render

1. 语法 res.render( 模板文件 路径,{要渲染的数据})
2. 会默认去views目录下去找
3. 如果想去他们目录找需要设置一下
4. app.set("views",你要修改到的目录)

路由

告诉你去哪里
对于前端 主要是导向告诉浏览器去哪
对于后端 可以理解为一个子服务 一个路由就是一个小的服务 处理一个接口

配置

let express = require('express')
let router = express.Router()


router.get('/',(req,res,next) =>{
  console.log(`我是A js 文件里面的 跟  `);
  res.send()
})
router.get('/a',(req,res) =>{
  console.log(`我是A js 文件里面的 a`);
  res.send()
})


router.use('/b',require('./b'))  //在A文件里面 在加载 A文件的子路由

module.exports = router

使用

app.use('/a',require('./a'))
.all() 方法

可以拦截所有的请求 若想放行就 next()执行
注意代码的解析顺序

MongoDB

1.是一个基于分布式文件存储的数据库 , 由C++ 语言编写
2.是一个介于关系数据库和非关系数据库之间的产品

关系型数据库

表就是关系
或者说表与表之间存在关系
所有关系型数据库都需要 sql 语句来操作
所有关系型数据库在操作之前都需要设计表结构
数据表还支持约束
1.唯一的
2.主键
3.默认值
4.非空

非关系型数据库

  1. 非常的灵活
  2. 有的 非关系型数据库 就是键值对
  3. MongoDB是最像关系型数据库的 非关系型数据库
  4. 数据库 -》 数据库
  5. 数据表 -》 集合(数组)
  6. 表记录 -》 (文档对象)
  7. MongoDB 不需要设计表结构
  8. 也就是说你可以任意往里面存数据 没有结构性这一说
  9. 可以有很多数据库
  10. 一个数据库中可以有多个集合(表)
  11. 一个集合中可以有多个文档(表记录)
  12. 文档结构很灵活没有任何限制
  13. MongoDB 非常灵活 不需要想MySQL 一样先创建 数据库 表 设计结构 在这里只需要插入数据的时候 指定往哪个集合操作就可以 一切 有MongoDB 来操作

安装 官网去下载官网
安装完以后 需要配置环境变量
检查

命令行 输入 mongod --version

mongodb 默认使用执行 mongod 命令所处盘符目录下的
/data / db 作为自己的数据库存储目录
如果没有这个目录 第一次 手动建一个 /data/db
如果想要修改默认的数据存储目录
mongod --dbpath=你要修改的路径

启动和关闭数据库

启动

在命令行 输入 mongod

关闭

ctrl + c

连接数据库

在命令行 输入 mongo

退出数据库

exit

操作命令
操作命令 (操作库)
show dbs  查看数据库列表
use 数据库名称 切换到指定的数据库 ( 如果没有会新建)
db  查看当前操作的数据库
db.dropDatabase()  删除当前库
db.version()  查看数据库版本

集合(表)操作命令

建:db.createCollection('表名',{配置})
  //配置:{size:文件大小,capped:true,max:条数|文档数} capped定量
  //db.表(集合).isCapped() 返回 true/false 是否是定量
查:show collections / db.getCollectionNames()
删:db.|集合.drop()

文档操作命令

增

db.集合.save({}) //添加一条
db.集合.insert({})  //添加一条
db.insertOne({}) //添加一条
​
db.集合.save([{},{}]) //多条
db.集合.insert([{},{}]) //多条
//insert  不会替换相同ID  save会

删

db.集合.deleteOne({要删数据条件描述}) //一条
db.集合.remove({},true)  //一条
​
db.集合.remove({要删数据条件描述}) //多条
db.集合.remove({}) //清空表

改

db.集合.update({查询条件},{$set:{替换条件}},插入boolean,全替换boolean)   // 如果第三个参数传个true  如果没有会插入


查
所有:db.集合.find(条件)
条数: db.集合.find().count()
去重:db.集合.distinct(key)
db.集合.find({条件},{指定要显示列区域})
指定要显示列区域
username:1 显示这个区域,其他不显示
username:0 不显示这个区域,其他显示
_id 是默认显示

排

db.集合.find().sort({key:1,key2:-1}) //升
db.集合.find().sort({key:-1}) //降

限定

db.集合.find().limit(number)  //限定
db.集合.find().skip(number)   //跳过
db.集合.findOne()//找第一个
db.集合.find().limit(1)  //查询第一条
 
发布了17 篇原创文章 · 获赞 4 · 访问量 255

猜你喜欢

转载自blog.csdn.net/sd2401345934/article/details/104844636