小博客
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于
  • 友链

设计模式

软件设计原则开闭原则对扩展开放,对修改关闭适合用抽象类和接口实现 里氏代换原则 任何基类出现的地方,子类一定可以出现 子类可扩展但不能改变父类原有功能,就是尽量不重写父类方法 反例假设有个长方形类,正方形类继承长方形类,同时自己内部重写了长和宽的 setter 方法,之后假设有个 resize 方法拓宽长方形,长方形实例没问题,但是正方形实例 resize 方法就会同时拓宽长和宽,违反里氏代换原
2025-12-08
知识

网络知识

TCPTCP 有三个特点,面向连接、可靠、基于字节流 面向连接:一定是「一对一」才能连接,不能像 UDP 协议可以一个主机同时向多个主机发送消息,也就是一对多是无法做到的; 可靠的:无论的网络链路中出现了怎样的链路变化, TCP 都可以保证一个报文一定能够到达接收端; 字节流:用户消息通过 TCP 协议传输时,消息可能会被操作系统「分组」成多个的 TCP 报文,如果接收方的程序如果不知道「消息的
2025-12-07
知识

知识点

网络代理正向代理(Forward Proxy) 代理对象:代表客户端向服务器发起请求 隐藏身份:隐藏客户端的真实身份 使用场景:客户端通过代理访问外部网络 典型例子:翻墙工具、公司内网代理 反向代理(Reverse Proxy) 代理对象:代表服务器响应客户端请求 隐藏身份:隐藏服务器的真实身份和架构 使用场景:服务器通过代理接收外部请求 典型例子:Nginx、负载均衡器 单行注释和文档注
2025-11-29

MySQL知识

其他要点和函数 select distinct去重 找到值为null 的列要用is而不是= round(m, n)四舍五入,m表留n位小数,n为负数时就是保留到整数位 ifnull(m, n)如果m为null就替换为n SUM(CASE WHEN c.action = 'confirmed' THEN 1 ELSE 0 END) / COUNT(*)case when 语句 the
2025-11-17
知识

苍穹外卖笔记

基础笔记 接口文档可以导入到 apifox 方便查看 @RequestBody是接受前端的 json 数据,然后反序列化为 Java 对象 Result<T>统一封装了返回给前端的数据,code,message,data,之后所有的结果只需要返回一个 Result 对象就行,成功返回 Result.ok(data),错误就返回 Result.error(message) DTO 与
2025-11-17
笔记

Java知识

值传递和引用传递 实际上只有值传递,传递值的副本 引用传递是传递地址作为值的副本,所以修改成员会影响原来的对象 基本类型值传递;引用类型(对象,数组等)引用传递 int 和 Integerint 是基本数据类型,直接计算Integer 是 Integer 对象,用各种方法Integer.parseInt(String s)将字符串转为 int(基本类型)Integer.max(int a, in
2025-11-14
知识

C++知识

指针 *号的两种使用 定义指针int* p, int *p,星号位置不重要 解指针p = &a ,*(p) 指针可用->访问成员变量,ptr->member等价于(*ptr).member 也可以连续访问root->left->right 123it是一个迭代器,vector<int>& nums = it->second;
2025-11-05
知识

js知识

js 变量const 用来声明常量let 用来声明变量 js 函数不声明函数返回值 12345678//常用这种箭头函数const add = (a, b) => a + b;console.log(add(3, 5)); // 8//与下面等价function add(a, b) { return a + b;}console.log(add(3, 5)); // 8
2025-11-04
知识

vue知识

常见语法v-bind绑定属性也简写作:v-on绑定事件也简写作@v-model绑定表单数据v-if条件渲染v-for循环渲染v-show隐藏元素 创建响应式数据ref 适合基本类型,reactive 对对象类型更合适创建完的对象用 .value 获取值 1234567const loginFormRef = ref(0);const loginForm = reactive({ use
2025-11-04
知识

一些操作

撤回 git 的 push,以及消除提交记录博客园的文章GIT 操作中,对于已经 push 到远程分支的提交如何回退?先git log查看记录,复制要回到的 commit id若要不改变历史记录则用git revert id会生成一个新 commit 推送到远程若要改变历史记录则用git reset id --soft和git push --forcereset的选项--hard本地也会回退,--
2025-11-02
123

搜索

Hexo Fluid