Node.js从入门到进阶2

一、fs模块

1.作用:与文件系统交互 -- 对文件的增、删、改、查

2.方法:fs.readFile(path[,options],(err,data)=>{}):异步读取文件内容 -- path是绝对路径,通过path模块处理

二、path模块

1.作用:用于处理文件和目录的路径

2.方法:path.join([...paths]):按照特定平台使用分隔符将给定的路径规范化生成一个新的路径

path.basename(path[,ext]):获取path的最后一部分,如果ext不省略,则会被忽略

path.dirname(path):获取path的目录部分

3.__dirname:返回当前文件所在的目录 -- 全局变量

4.__filename:返回当前文件所在的具体路径(包含文件名) -- 全局变量

三、其他

1.MIME Type:媒体类型(内容类型),与文件后缀对应,用来给媒体资源设置正确的类型以此正常显示资源

四、获取请求数据

1.get请求:数据由URL提交,当通过URL API处理后,请求字符串存储search(新版,旧版)中,请求数据对象在searchParams(新版的URL API)中

1.旧版
const qstr = require("queryString");//查询字符串处理模块
let data = qstr.parse(url.search); //返回键值对集合
2.新版
2.1:如果使用新版URL API,那么直接就是url.searchParams
2.2:如果是旧版URL API
     let data = new URLSearchParams(url.search);
data.append(k,v):追加键值对,同名的保留
data.set(k,v):设置键值,同名的覆盖

2.post请求:request中没有专门用于处理post请求的属性,只能通过监听事件获取请求数据

let data = "";
request.on("data",chunk=>data+=chunk;) //数据传递中
request.on("end",()=>data);  //数据传输完毕:x=1&y=2

五、数据库

1.作用:存储数据

2.分类:Mysql,Oracle,SQL Server....

3.使用:安装对应的数据库-》开启服务

4.工具:Navicat

1.创建连接:主机名:数据库服务器所在的主机名或ip -- localhost
          端口号:3306
          用户名:登录数据库时的账号  --  root
          密码:登录数据库时的密码  --  root
2.创建数据库:数据库名,编码
3.创建表:
  1.字段名:数据存储的名字
  2.类型:字符串:char:最大长度为255,定长,指定长度
                varchar:最大长度为255,变长,指定长度
                text:大文本
  3.主键:数据的唯一标识,递增整数,不能重复

六、SQL

1.结构化查询语言,用来对数据库进行CURD -- 跨平台、跨语言

2.课程内容:对表内容的CURD

新增(INSERT)

INSERT INTO `table` (`name1`,`name2`...) VALUES (val1,val2...)  -- 给指定的字段添加指定的值(字段先后顺序无关)
​
INSERT INTO `table` VALUES(val1,val2...) -- 添加一条数据(省略了字段名,值按照字段在表中的顺序一一对应,包括所有字段)
​
注意:字段和值按顺序一一对应 -- 个数,类型,顺序
     字符串类型的值必须加引号(单双引号)

删除(DELETE)

DELETE FROM `table`  --  删除所有表的数据
DELETE FROM `table` WHERE condition  --  按条件删除满足数据

修改(UPDATE)

UPDATE `table` SET `name`="val",`name2`="val2"  -- 将表中所有的数据name设置为val1,name2设置为val2
UPDATE `table` SET `name`="val",`name2`="val2" WHERE condition  --  按条件修改数据

查询(SELECT)

SELECT * FROM `table`  -- 查询table的所有字段所有数据
SELECT * FROM `table` WHERE condition  --  按条件查询数据
SELECT * FROM `table` WHERE `name`="val" -- 查找所有name为val的数据
SELECT * FROM `table` WHERE `name` LIKE "%val%" -- 查找所有name中包含val的数据(模糊查询)
SELECT * FROM `table` WHERE condition AND condition2 -- 查找所有满足condition和condition2的数据
SELECT * FROM `table` WHERE condition OR condition2  --  查找所有满足condition或condition2的数据
SELECT * FROM `table` WHERE `name` IN ("val1","val2"...)  -- 查找所有name为val1或val2的数据
SELECT * FROM `table` ORDER BY `name` ASC/DESC[,`name` ASC/DESC]  --  数据按name升序(ASC,默认)/降序排列后,再按照name2升序/降序排列
SELECT * FROM `table` LIMIT [start=0,]len;  -- 查询满足条件从start开始,len条数据
SELECT `name`,`name2` AS `names` FROM `table` -- 查询特定字段+字段别名

七、NPM

1.Node.js包管理器,随着Node.js一起安装

2.包:第三方模块,别人开发好某些功能,可以直接下载使用

3.常用NPM命令:

$ npm -v:查看当前npm的版本
$ npm install package  --  将包下载到当前目录并写入dependencies
$ npm install package --save/-S  将包下载到当前目录并写入dependencies
$ npm install package --save-dev/-D  将包下载到当前目录并写入devDependencies
$ npm install package -g  --  将包作为全局包下载(全局工具)
$ npm root -g  --  查看全局安装包路径
$ npm init -- 项目初始化(生成package.json package-lock.json)
$ npm uninstall package  --  卸载包
$ npm config ls -l  --  查看npm的配置
$ npm get registry  --  查看npm源
$ npm set registry https://registry.npm.taobao.org
$ npm install  --  按照package.json安装包
​
package.json:项目配置文件
{
    "main":"index.js",  //入口文件
    "dependencies":{}  //生产环境依赖
    "devDependencies":{}  //开发环境依赖
}

4.官网:https://www.npmjs.com/package/

5.其他工具:yarnpnpm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小刘03

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值