通过nvm安装node
nvm地址
https://github.com/coreybutler/nvm-windows/releases
nvm常见指令
// 查看可用版本
nvm list available
// 安装LTS长期支持版本
nvm install 20.12.2
// 使用该版本
nvm use 20.12.2
// 查看已有版本
nvm list
npm镜像源
// 查看镜像源,默认是:https://registry.npmjs.org/
npm config get registry
// 修改为淘宝镜像源
npm config set registry https://registry.npmmirror.com
通过express创建项目
项目构建,启动
流程
// 安装
npm i -g express-generator@4
// 创建项目clwy-api
express --no-view clwy-api
// 进入项目并安装依赖
npm i
// 启动项目,打开localhost:3030即可
npm start
// 注意:--no-view不需要任何视图模板
获取json接口而不是html页面
// 修改routes/index.js
// router.get('/', function(req, res, next) {
// res.render('index', { title: 'Express' });
// });
router.get("/", function (req, res, next) {
res.json({ message: "Express" })
})
// 删除public/index.html,重启
nodemon
npm i nodemon
"scripts": {
"start": "nodemon ./bin/www"
},
使用docker安装MySQL
其他方法
// 传统的安装方法需要非常繁琐的下一步
// 集成环境要简单很多,但是也不推荐
// 因为在Windows与macOS下,安装和使用的流程都有所不同
// 而且将来部署到服务器后,也会有一些默认配置不同
docker的下载及使用
- 下载
https://www.docker.com/get-started/
- 配置中国镜像
// 打开选项-Docker Engine
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"registry-mirrors": [
"https://xelrug2w.mirror.aliyuncs.com"
]
}
docker的常见问题
- docker stop和linux版本旧问题
cmd==>wsl --update
- 启动时,提示Starting the Docker Engine...,然后一直卡住不动
控制面板-程序-启动或关闭windows功能-打开hyper-v和适用于linux的window子系统-重启电脑
- 没有hyper-v选项
// 新建Hyper.cmd,输入以下代码,启动
pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
使用docker compose
- 项目根目录下创建docker-compose.yml
services:
mysql:
image: mysql:8.3.0
command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci
environment:
- MYSQL_ROOT_PASSWORD=clwy1234
- MYSQL_LOWER_CASE_TABLE_NAMES=0
ports:
- "3306:3306"
volumes:
- ./data/mysql:/var/lib/mysql
- 启动
// 注:可能需要开启vpn
docker-compose up -d
安装navicat管理MySQL
创建数据库与数据表
连接mySQL
CRUD
:
数据库的常用操作就四个内容:增删改查
英文我们叫做:Create、Delete、Update、Read
连接-mysql-输入连接名密码-测试连接-确定
创建数据库
右键本机-新建数据库
数据库的编码选择`utf8mb4`,字符集选择`utf8mb4_general_ci`
// 默认,可以不选直接生成
创建表
新建表-添加字段-保存为Articles表
注:id要选择自动递增
int:整数
char/varchar:字符串
text:文本
decimal:小数
date/time/datetime:时间
常用SQL语句:增加、修改、删除
增加语句
- 可视化操作:
- 语句:
// 单行插入
INSERT INTO 表名 (列1, ...) VALUES (值1, ...)
// 例如:
INSERT INTO `Articles` (`title`, `content`) VALUES ('行路难·其一', '长风破浪会有时,直挂云帆济沧海。');
// 多行插入
INSERT INTO 表名 (列1, ...) VALUES (值1, ...),(值1, ...)...;
// 例如:
INSERT INTO `Articles` (`title`, `content`) VALUES ('将进酒', '天生我材必有用,千金散尽还复来。'), ('宣州谢朓楼饯别校书叔云', '抽刀断水水更流,举杯消愁愁更愁。'), ('梦游天姥吟留别', '安能摧眉折腰事权贵,使我不得开心颜!'), ('春夜宴从弟桃花园序', '天地者,万物之逆旅也;光阴者,百代之过客也。'), ('宣州谢朓楼饯别校书叔云', '弃我去者,昨日之日不可留;乱我心者,今日之日多烦忧。'), ('庐山谣寄卢侍御虚舟', '我本楚狂人,凤歌笑孔丘。手持绿玉杖,朝别黄鹤楼。'), ('行路难', '长风破浪会有时,直挂云帆济沧海'), ('将进酒', '人生得意须尽欢,莫使金樽空对月。天生我材必有用,千金散尽还复来。'), ('望庐山瀑布', '飞流直下三千尺,疑是银河落九天。'), ('访戴天山道士不遇', '树深时见鹿,溪午不闻钟。'), ('清平调', '云想衣裳花想容,春风拂槛露华浓。'), ('春夜洛城闻笛', '谁家玉笛暗飞声,散入春风满洛城。');
注:操作后刷新才能看到更新
修改语句
UPDATE 表名 SET 列1=值1, 列2=值2, ... WHERE 条件
// 例如:
UPDATE `Articles` SET `title`='黄鹤楼送孟浩然之广陵', `content`='故人西辞黄鹤楼,烟花三月下扬州。' WHERE `id`=2;
删除语句
DELETE FROM 表名 WHERE 条件
-- 例如:
DELETE FROM `ARTICLES` WHERE `id`=5;