From efa0f95ff182fe09c3336a81a4828f0337b2cc75 Mon Sep 17 00:00:00 2001 From: pengshiyu <1940607002@qq.com> Date: Mon, 18 Apr 2022 09:41:04 +0800 Subject: [PATCH] fix --- README.md | 2 + _navbar.md | 22 ++ _sidebar.md | 1 + blog/mysq-advance/index.md | 4 + blog/php-basic/index.md | 6 +- blog/php-mysql/index.md | 2 + blog/php-mysql/sql-procedure.md | 3 - blog/php-mysql/sql-trigger.md | 336 +++++++++++++++++++++++++++++ blog/websocket/demo-chat-update.md | 168 +++++++++++++++ blog/websocket/demo-chat.md | 106 +++++++++ blog/websocket/demo-echo.md | 95 ++++++++ blog/websocket/demo-socket.io.md | 55 +++++ blog/websocket/index.md | 59 +++++ doc/java.md | 11 +- doc/mysql.md | 7 + img/python-select-qrcode.jpeg | Bin 0 -> 84242 bytes index.html | 9 + 17 files changed, 879 insertions(+), 7 deletions(-) create mode 100644 _navbar.md create mode 100644 blog/mysq-advance/index.md create mode 100644 blog/php-mysql/sql-trigger.md create mode 100644 blog/websocket/demo-chat-update.md create mode 100644 blog/websocket/demo-chat.md create mode 100644 blog/websocket/demo-echo.md create mode 100644 blog/websocket/demo-socket.io.md create mode 100644 blog/websocket/index.md create mode 100644 img/python-select-qrcode.jpeg diff --git a/README.md b/README.md index 3da4210..aae5cd4 100644 --- a/README.md +++ b/README.md @@ -47,3 +47,5 @@ npm run dev ``` ![](https://api.isoyu.com/bing_images.php) + +![](img/python-select-qrcode.jpeg ':size=40%') \ No newline at end of file diff --git a/_navbar.md b/_navbar.md new file mode 100644 index 0000000..3352ace --- /dev/null +++ b/_navbar.md @@ -0,0 +1,22 @@ +* [程序员导航](https://mouday.github.io/hao123/) + +* [学习笔记](https://mouday.github.io/LearningNote/) + +* [在线Demo](https://mouday.github.io/front-end-demo/) + +* [个人网站](https://www.pengshiyu.com/) + +* 博客站点 + * [GitHub](https://github.com/mouday) + + * [CSDN](https://pengshiyu.blog.csdn.net/) + + * [51CTO](https://blog.51cto.com/u_13567403) + + * [稀土掘金](https://juejin.cn/user/3104676568106567) + + * [知乎](https://www.zhihu.com/people/pengshiyu) + + * [华为云](https://bbs.huaweicloud.com/community/usersnew/id_1628242835316833) + + * [阿里云](https://developer.aliyun.com/group/pengshiyu) \ No newline at end of file diff --git a/_sidebar.md b/_sidebar.md index a4688c2..80d6fa2 100644 --- a/_sidebar.md +++ b/_sidebar.md @@ -9,6 +9,7 @@ - [Canvas](doc/canvas.md) - [微信小程序](doc/miniprogram.md) - [Vue.js](doc/vue.md) + - [websocket](blog/websocket/index.md) - 后端 diff --git a/blog/mysq-advance/index.md b/blog/mysq-advance/index.md new file mode 100644 index 0000000..c975a3b --- /dev/null +++ b/blog/mysq-advance/index.md @@ -0,0 +1,4 @@ + +MySQL进阶 + +https://www.bilibili.com/video/BV1Kr4y1i7ru?p=58 \ No newline at end of file diff --git a/blog/php-basic/index.md b/blog/php-basic/index.md index 607ec40..390745d 100644 --- a/blog/php-basic/index.md +++ b/blog/php-basic/index.md @@ -1,4 +1,4 @@ -# 笔记:黑马程序员 PHP 零基础入门到精通教程(P1 基础 6 天) +笔记:黑马程序员 PHP 零基础入门到精通教程(P1 基础 6 天) 视频地址:[https://www.bilibili.com/video/BV18x411H7qD](https://www.bilibili.com/video/BV18x411H7qD) @@ -12,9 +12,9 @@ 5. [PHP 运算符 operator](blog/php-basic/operator.md) -[PHP 流程控制](blog/php-basic/process.md) +6. [PHP 流程控制](blog/php-basic/process.md) -[PHP 常用的系统函数](blog/php-basic/system.md) +7. [PHP 常用的系统函数](blog/php-basic/system.md) [PHP 文件包含](blog/php-basic/include.md) diff --git a/blog/php-mysql/index.md b/blog/php-mysql/index.md index d3de127..33afff8 100644 --- a/blog/php-mysql/index.md +++ b/blog/php-mysql/index.md @@ -63,3 +63,5 @@ [函数 function](blog/php-mysql/sql-function.md) [存储过程 procedure](blog/php-mysql/sql-procedure.md) + +[触发器 trigger](blog/php-mysql/sql-trigger.md) diff --git a/blog/php-mysql/sql-procedure.md b/blog/php-mysql/sql-procedure.md index b6fd330..28081fe 100644 --- a/blog/php-mysql/sql-procedure.md +++ b/blog/php-mysql/sql-procedure.md @@ -206,6 +206,3 @@ mysql> select @var1, @var2, @var3; 1、实参传入过程之后,实际上没有改变外部变量的值,而是把值给了形参,out类型不能接收外部变量的值,默认为null 2、当过程执行到end 的时候,如果是out或inout变量,会将形参的值重新赋值给实参变量 - - -https://www.bilibili.com/video/BV1Vx411g7uJ?p=75&spm_id_from=pageDriver \ No newline at end of file diff --git a/blog/php-mysql/sql-trigger.md b/blog/php-mysql/sql-trigger.md new file mode 100644 index 0000000..5b93b84 --- /dev/null +++ b/blog/php-mysql/sql-trigger.md @@ -0,0 +1,336 @@ +# 触发器 + +## 一、基本概念 + +触发器是一种特殊类型的存储过程,触发器通过事件进行触发而被执行 + +触发器 trigger 和js事件类似 + +1、作用: + +1. 写入数据表前,强制检验或转换数据(保证数据安全) +2. 触发器发生错误时,异动的结果会被撤销(事务安全) +3. 部分数据库管理系统可以针对数据定义语言DDL使用触发器,称为DDL触发器 +4. 可以依照特定的情况,替换异动的指令 instead of(mysql不支持) + +2、触发器的优缺点 + +2.1、优点 + +1. 触发器可通过数据库中的相关表实现级联更改(如果一张表的数据改变,可以利用触发器实现对其他表的操作,用户不知道) +2. 保证数据安全,进行安全校验 + +2.2、缺点 + +1. 对触发器过分依赖,势必影响数据库的结构,同时增加了维护的复杂度 +2. 造成数据在程序层面不可控 + +## 二、创建触发器 + +1、基本语法 + +```sql +create trigger 触发器名字 触发时机 触发事件 on 表 for each row +begin + +end +``` + +2、触发对象 + +`on 表 for each row` 触发器绑定表中所有行,没一行发生指定改变的时候,就会触发触发器 + + +3、触发时机 + +每张表对应的行都有不同的状态,当SQL指令发生的时候,都会令行中数据发生改变,每一行总会有两种状态:数据操作前和数据操作后 + +- before: 数据发生改变前的状态 +- after: 数据已经发生改变后的状态 + +4、触发事件 + +mysql中触发器针对的目标是数据发生改变,对应的操作只有写操作(增删改) + +- inert 插入操作 +- update 更新操作 +- delete 删除操作 + +5、注意事项 + +一张表中,每一个触发时机绑定的触发事件对应的触发器类型只能有一个 + +一张表表中只能有一个对应的after insert 触发器 + +最多只能有6个触发器 + +```sql +before insert +after insert + +before update +after update + +before delete +after delete +``` + +### 1.1 需求 + +下单减库存 + +有两张表,一张是商品表,一张是订单表(保留商品ID)每次订单生成,商品表中对应的库存就应该发生变化 + +1、创建两张表 + +```sql +create table my_item( + id int primary key auto_increment, + name varchar(20) not null, + count int not null default 0 +) comment '商品表'; + +create table my_order( + id int primary key auto_increment, + item_id int not null, + count int not null default 1 +) comment '订单表'; + +insert my_item (name, count) values ('手机', 100),('电脑', 100), ('包包', 100); + +mysql> select * from my_item; ++----+--------+-------+ +| id | name | count | ++----+--------+-------+ +| 1 | 手机 | 100 | +| 2 | 电脑 | 100 | +| 3 | 包包 | 100 | ++----+--------+-------+ +3 rows in set (0.00 sec) + +mysql> select * from my_order; +Empty set (0.02 sec) +``` + +2、创建触发器 + + +如果订单表发生数据插入,对应的商品就应该减少库存 + +```sql +delimiter $$ + +create trigger after_insert_order_trigger after insert on my_order for each row +begin + -- 更新商品库存 + update my_item set count = count - 1 where id = 1; +end +$$ +delimiter ; +``` + +## 三、查看触发器 + +```sql + +-- 查看所有触发器 +show triggers\G +*************************** 1. row *************************** + Trigger: after_insert_order_trigger + Event: INSERT + Table: my_order + Statement: begin + + update my_item set count = count - 1 where id = 1; +end + Timing: AFTER + Created: 2022-04-16 10:00:19.09 + sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION + Definer: root@localhost +character_set_client: utf8mb4 +collation_connection: utf8mb4_general_ci + Database Collation: utf8mb4_general_ci +1 row in set (0.00 sec) + + +-- 查看创建语句 +show crate trigger 触发器名字; + +-- eg: +show create trigger after_insert_order_trigger; +``` + +## 四、触发触发器 + +让触发器执行,让触发器指定的表中,对应的时机发生对应的操作 + + +```sql +insert into my_order (item_id, count) values(1, 1); + +mysql> select * from my_order; ++----+---------+-------+ +| id | item_id | count | ++----+---------+-------+ +| 1 | 1 | 1 | ++----+---------+-------+ +1 row in set (0.00 sec) + +mysql> select * from my_item; ++----+--------+-------+ +| id | name | count | ++----+--------+-------+ +| 1 | 手机 | 99 | +| 2 | 电脑 | 100 | +| 3 | 包包 | 100 | ++----+--------+-------+ +3 rows in set (0.00 sec) +``` + +## 五、删除触发器 + +```sql +drop trigger 触发器名字; + +-- eg +drop trigger after_insert_order_trigger; +``` + +## 六、触发器的应用 + +记录关键字 new old + + +### 6.1 完善 + +商品自动扣除库存 + +触发器针对的是数据表中的每条记录,每行数据再操作前后都有一个对应的状态 + +触发器在执行之前就将对应的数据状态获取到了: +- 将没有操作之前的数据状态都保存到`old`关键字中 +- 操作后的状态都放在`new`中 + +触发器中,可以通过old和new来获取绑定表中对应的记录数据 + +基本语法 + +```sql +关键字.字段名 +``` + +old和new并不是所有触发器都有 + +- insert 插入前为空,没有old +- delete 清除数据,没有new + + +商品自动扣减库存 + +```sql +delimiter $$ +create trigger after_insert_order_trigger after insert on my_order for each row +begin + -- 通过new关键字获取新数据的id 和数量 + update my_item set count = count - new.count where id = new.item_id; +end +$$ +delimiter ; +``` + +触发触发器 + +```sql +mysql> select * from my_order; ++----+---------+-------+ +| id | item_id | count | ++----+---------+-------+ +| 1 | 1 | 1 | ++----+---------+-------+ + +mysql> select * from my_item; ++----+--------+-------+ +| id | name | count | ++----+--------+-------+ +| 1 | 手机 | 99 | +| 2 | 电脑 | 100 | +| 3 | 包包 | 100 | ++----+--------+-------+ + +insert into my_order (item_id, count) values(2, 3); + + +mysql> select * from my_order; ++----+---------+-------+ +| id | item_id | count | ++----+---------+-------+ +| 1 | 1 | 1 | +| 2 | 2 | 3 | ++----+---------+-------+ + +mysql> select * from my_item; ++----+--------+-------+ +| id | name | count | ++----+--------+-------+ +| 1 | 手机 | 99 | +| 2 | 电脑 | 97 | +| 3 | 包包 | 100 | ++----+--------+-------+ +``` + +### 6.2 优化 + +如果库存数量没有商品订单多怎么办? + +```sql +-- 删除原有触发器 +drop trigger after_insert_order_trigger; + + +-- 新增判断库存触发器 +delimiter $$ +create trigger after_insert_order_trigger after insert on my_order for each row +begin + -- 查询库存 + select count from my_item where id = new.item_id into @count; + + -- 判断 + if new.count > @count then + -- 中断操作,暴力抛出异常 + insert into xxx values ('xxx'); + + end if; + + -- 通过new关键字获取新数据的id 和数量 + update my_item set count = count - new.count where id = new.item_id; +end +$$ +delimiter ; +``` + +结果验证 + +```sql +mysql> insert into my_order (item_id, count) values(3, 101); +ERROR 1146 (42S02): Table 'mydatabase2.xxx' doesn't exist + +mysql> select * from my_order; ++----+---------+-------+ +| id | item_id | count | ++----+---------+-------+ +| 1 | 1 | 1 | +| 2 | 2 | 3 | ++----+---------+-------+ +2 rows in set (0.00 sec) + +mysql> select * from my_item; ++----+--------+-------+ +| id | name | count | ++----+--------+-------+ +| 1 | 手机 | 99 | +| 2 | 电脑 | 97 | +| 3 | 包包 | 100 | ++----+--------+-------+ +3 rows in set (0.00 sec) +``` + diff --git a/blog/websocket/demo-chat-update.md b/blog/websocket/demo-chat-update.md new file mode 100644 index 0000000..e54110d --- /dev/null +++ b/blog/websocket/demo-chat-update.md @@ -0,0 +1,168 @@ +# 示例3 聊天室升级版 + +## 客户端 + +```html + + + + + + + + + WebSocket Demo + + + + + +
+ + + + + +``` + +## 服务端 + +```js +// server.js +const ws = require('nodejs-websocket'); +var dayjs = require("dayjs"); + +// 消息类型枚举 +const message_type = { + OPEN: 'open', + CLOSE: 'close', + MESSAGE: 'message', +}; + +// 端口号 +const PORT = 8080; + +// 所有用户数 +var count = 0; + +function getTime(){ + return dayjs().format('HH:mm'); +} + +// 监听事件 +var server = ws.createServer(function (conn) { + console.log('New connection'); + count++; + conn.user_name = '用户' + count; + + broadcast({ + type: message_type.OPEN, + message: conn.user_name + '加入了聊天室', + time: getTime(), + }); + + // 接收客户端发送的数据 + conn.on('text', function (data) { + console.log('Received ' + data); + // conn.sendText(data) + broadcast({ + type: message_type.MESSAGE, + message: conn.user_name + ':' + data, + time: getTime(), + }); + }); + + // 客户端断开 + conn.on('close', function (code, reason) { + console.log('Connection closed'); + let message = conn.user_name + '离开了聊天室'; + broadcast({ + type: message_type.CLOSE, + message: message, + time: getTime(), + }); + }); + + // 客户端异常 + conn.on('error', function (err) { + console.log('异常'); + }); +}); + +// 广播给所有用户 +function broadcast(data) { + server.connections.forEach(function (conn) { + conn.sendText(JSON.stringify(data)); + }); +} + +// 启动服务 +server.listen(PORT, () => { + console.log(`Server started on port ${PORT}`); +}); + +``` \ No newline at end of file diff --git a/blog/websocket/demo-chat.md b/blog/websocket/demo-chat.md new file mode 100644 index 0000000..2b37b5a --- /dev/null +++ b/blog/websocket/demo-chat.md @@ -0,0 +1,106 @@ +# 示例2 聊天室 + +## 客户端 + +```html + + + + + + + + + WebSocket Demo + + + + + +
+ + + + + +``` + +## 服务端 + +```js +// server.js +const ws = require("nodejs-websocket") + +// 端口号 +const PORT = 8080; + +// 所有用户数 +var count = 0; + +// 监听事件 +var server = ws.createServer(function (conn) { + console.log("New connection") + count++; + conn.user_name = "用户" + count; + + broadcast(conn.user_name + "加入了聊天室"); + + // 接收客户端发送的数据 + conn.on("text", function (data) { + console.log("Received "+data) + // conn.sendText(data) + broadcast(conn.user_name + ":" + data) + }) + + // 客户端断开 + conn.on("close", function (code, reason) { + console.log("Connection closed") + broadcast(conn.user_name + "离开了聊天室") + }) + + // 客户端异常 + conn.on("error", function (err) { + console.log('异常') + }) +}) + +// 广播给所有用户 +function broadcast(msg){ + server.connections.forEach(function (conn) { + conn.sendText(msg) + }) +} + +// 启动服务 +server.listen(PORT, () => { + console.log(`Server started on port ${PORT}`) +}) +``` + diff --git a/blog/websocket/demo-echo.md b/blog/websocket/demo-echo.md new file mode 100644 index 0000000..2449237 --- /dev/null +++ b/blog/websocket/demo-echo.md @@ -0,0 +1,95 @@ +# 示例1 Echo + +## 客户端代码 + +```html + + + + + + + + + WebSocket Demo + + + + + +
+ + + + + +``` + +## 服务端代码 + +使用到的库 + +nodejs-websocket + + - npm: https://www.npmjs.com/package/nodejs-websocket + - github: https://github.com/sitegui/nodejs-websocket + +```bash +cnpm i nodejs-websocket -S +``` + +```js +// server.js +var ws = require("nodejs-websocket") + +const PORT = 8080; + +// 监听事件 +var server = ws.createServer(function (connection) { + console.log("New connection") + + // 接收客户端发送的数据 + connection.on("text", function (data) { + console.log("Received "+data) + connection.sendText(data) + }) + + // 客户端断开 + connection.on("close", function (code, reason) { + console.log("Connection closed") + }) + + // 客户端异常 + connection.on("error", function (err) { + console.log('异常') + }) +}) + +// 启动服务 +server.listen(PORT, () => { + console.log(`Server started on port ${PORT}`) +}) +``` diff --git a/blog/websocket/demo-socket.io.md b/blog/websocket/demo-socket.io.md new file mode 100644 index 0000000..5eb9a5e --- /dev/null +++ b/blog/websocket/demo-socket.io.md @@ -0,0 +1,55 @@ +## 示例4 socket.io + +## 客户端 + +```html + + + + + +``` + +## 服务端 + +安装依赖 + +``` +cnpm i socket.io -S +``` + +代码示例 + +```js +const { Server } = require('socket.io'); +const { createServer } = require('http'); + +const httpServer = createServer(); + +// 处理跨域 +const io = new Server(httpServer, { + cors: { + origin: '*', + }, +}); + +io.on('connection', (socket) => { + // 接收数据, 监听自定义事件 + socket.on('message', (data) => { + // 发送数据 + socket.emit('message', data); + }); +}); + +httpServer.listen(8080); +``` diff --git a/blog/websocket/index.md b/blog/websocket/index.md new file mode 100644 index 0000000..6b776ab --- /dev/null +++ b/blog/websocket/index.md @@ -0,0 +1,59 @@ + +[websocketd](http://websocketd.com/) is the WebSocket daemon, It's like CGI, twenty years later, for WebSockets + + +Web前端-3小时教你打造一个聊天室(websocket) + +https://www.bilibili.com/video/BV14K411T7cd + + +WebSocket 协议 + +基于TCP的一种新的网络协议,它实现了浏览器与服务器全双工(full-duplex)通信 + +允许服务器主动发送消息给客户端 + + +文档:https://developer.mozilla.org/zh-CN/docs/Web/API/WebSocket/WebSocket + + +创建websocket对象 +```js +var ws = new WebSocket(url, [protocols]); +``` + +方法 + +方法 | 说明 +- | - +close() | 关闭链接 +send(data) | 发送数据 + +事件 + +事件名 | 说明 +- | - +open | 连接打开 +message | 接收到新消息 +error | 出现错误 +close | 连接关闭 + +实现技术: + +- 客户端:WebSocket +- 服务端:[nodejs-websocket](https://www.npmjs.com/package/nodejs-websocket) / [ws](https://www.npmjs.com/package/) + + + + +## 示例 + +[示例1 Echo](blog/websocket/demo-echo.md) + +[示例2 聊天室](blog/websocket/demo-chat.md) + +[示例3 聊天室升级版](blog/websocket/demo-chat-update.md) + +[示例4 socket.io](blog/websocket/demo-socket.io.md) + +https://www.bilibili.com/video/BV14K411T7cd?p=8&spm_id_from=pageDriver \ No newline at end of file diff --git a/doc/java.md b/doc/java.md index b5904a6..e1eb97f 100644 --- a/doc/java.md +++ b/doc/java.md @@ -10,7 +10,14 @@ [Spring Initializr](https://start.spring.io/) -[JavaGuide](https://snailclimb.gitee.io/javaguide/#/) +[JavaGuide](https://snailclimb.gitee.io/javaguide/#/): 「Java学习+面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识。 + + - [JavaGuide](https://javaguide.cn/) JavaGuide 在线阅读网站(新版,推荐👍) + +[Java 全栈知识体系](https://pdai.tech/) 包含: Java 基础, Java 部分源码, JVM, Spring, Spring Boot, Spring Cloud, 数据库原理, MySQL, ElasticSearch, MongoDB, Docker, k8s, CI&CD, Linux, DevOps, 分布式, 中间件, 开发工具, Git, IDE, 源码阅读,读书笔记, 开源项目... + +[CS-Notes](https://github.com/CyC2018/CS-Notes) 技术面试必备基础知识、Leetcode、计算机操作系统、计算机网络、系统设计 + - [http://www.cyc2018.xyz/](http://www.cyc2018.xyz/) [Java 教程 | 菜鸟教程](https://www.runoob.com/java/java-tutorial.html) @@ -26,6 +33,8 @@ - [在 html 中使用 thymeleaf 编写通用模块](https://www.cnblogs.com/miaoying/p/7804351.html) +[freemarker](https://freemarker.apache.org/): 用 Java 语言编写的模板引擎, + [JavaLite](https://javalite.io/) - Java, light as a feather [MyBatis-Plus](https://baomidou.com/): (简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 diff --git a/doc/mysql.md b/doc/mysql.md index 55be1f9..9577ead 100644 --- a/doc/mysql.md +++ b/doc/mysql.md @@ -1,3 +1,10 @@ # MySQL [H2 Database](http://www.h2database.com/): Very fast, open source, JDBC API + + +# 学习视频 + +[尚硅谷 MySQL数据库教程天花板,mysql安装到mysql高级,强!硬!](https://www.bilibili.com/video/BV1iq4y1u7vj) 2021-11-17 + +[黑马程序员 MySQL数据库入门到精通,从mysql安装到mysql高级](https://www.bilibili.com/video/BV1Kr4y1i7ru) 2022-01-18 \ No newline at end of file diff --git a/img/python-select-qrcode.jpeg b/img/python-select-qrcode.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..b5c482fc1f299bfd8def95b524b48c0b9daacc1f GIT binary patch literal 84242 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 Z|E8ME`#OIchx4|DtxK>`?t>zlfUY3tl9JK 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

I|Be0$cGN5KNr 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 @@ -40,6 +45,10 @@ window.$docsify = { name: 'Coding Tree', loadSidebar: true, + + // 导航栏 + loadNavbar: true, + // loadNavbar: true, repo: 'mouday/coding-tree', alias: { -- GitLab