- 博客(62)
- 收藏
- 关注
原创 Http:八股
1、服务器将公钥注册到CA, CA用自己的私钥给 服务器的公钥进行数字签名。2、客户端拿到服务器证书后,用CA的公钥确认数字证书的真实性。3、获取服务器的公钥,使用它对报文加密后发送。SSL/加密流程:1、向服务端索要公钥,验证公钥的有效性。2、双方协商产生会话密钥。(通过非对称加密,产生会话密钥)3、通过会话密钥,进行加密通信。(对称加密)
2024-08-04 17:10:16 323
原创 Java垃圾回收_1
存在循环引用问题, Java未使用这种算法在引用计数法中,每个对象都有一个引用计数器,记录着指向该对象的引用数量。当引用计数器为零时,表示没有任何引用指向该对象,该对象可以被释放,回收其占用的内存。
2024-05-31 10:20:56 831
原创 docker-file 网络
加入自定义网络的容器可以互相访问,并且可以通过容器名互相访问,不需要知道容器名。新加入的网卡容器加入网络 docker network connect heima nginxdocker inspect nginx 查看 多出一个network。
2024-05-21 22:54:36 505
原创 SpringBoot Bean
加上Bean注解,使用通过Aotuwired注入第三方Bean 可以通过Bean注解的name value 指定bean名称,默认是方法名第三方Bean需要注入其他Bean,可以通过形参自动装配,根据类型从IOC容器找到Bean对象注入。
2024-05-19 20:26:25 389
原创 Java AOP
切入点表达式 : 返回值 包名 + 类名 + 方法(方法参数, …要在其他类中使用,pointcut修饰的方法改为public。为目标对象生成代理对象,程序执行的时候注入的是代理对象。自定义注解MyLog,要匹配哪个方法就在方法上加注解。原始方法前开启事物,原始方法结束后 提交/回滚事物。调用代理对象的list方法,已经进行了功能的增强。可以获得目标方法的 方法名 参数 类名等信息。环绕通知,原始方法之前和之后都可以执行。执行业务层方法时,运行共性方法。可以被AOP控制的方法。匹配有特定注解的方法。
2024-05-18 21:52:46 189
原创 Filter和Interceptor
浏览器接收响应回来的数据 自动将cookie存储在本地,服务器端接收到请求对请求进行统一拦截,校验token。后续请求当中浏览器将cookie携带到服务器。服务器自动将cookie响应给浏览器。
2024-05-18 15:57:06 145
原创 sprinboot配置文件
Value注解读取配置文件,properties配置文件。将spring配置文件中的值自动注入对象的属性中。配置文件值赋值给AliOSSUtils中的属性。每个成员变量加value注解,繁琐。
2024-05-18 11:41:45 139
原创 【多表查询】---------------------三大范式
左外连接:左表全部数据,即使数据没有和右表产生关联。右外连接:右表全部数据,即使数据没有和左表产生关联。
2024-05-16 10:21:56 229
原创 mysql索引失效和count(*)
也就是 like %xx 或者 like %xx% 这两种方式都会造成索引失效。因为索引 B+ 树是按照「索引值」有序排列存储的,只能根据前缀进行比较。
2024-05-15 15:21:47 366
原创 Web开发三层架构
如果要将实现类由EmpServiceA 切换为EmpServiceB,可以基于B对象在容器中创建一个对象,即使Service中实现类发生变化,Controller代码也不需要改动。此时如果要切换实现类:EmpServiceA 切换到EmpServiceB,将A上面的 //@Component注释掉就可以。有两个EmpService的Bean,EmpServiceA,EmpServiceB:使用哪个?(1)@Primary 设置优先级,想要哪个Bean生效,就在哪个Bean上加@Primary。
2024-05-14 21:00:58 374
原创 Java获取请求参数
/请求参数名与形参中数组名保持一致//集合接收,请求参数名和集合变量名相同// 加上注解@RequestParam//接收json格式的数据,加上注解@RequestBody//路径参数,请求的参数是路径的一部分,id是可变的。
2024-05-14 19:32:58 1048
原创 Tomcat
springboot开发的入门程序,springboot底层提供servlet程序,DispatcherServlet。HttpServletRequest解析请求信息,应用程序可以通过Request对象获取请求信息。HttpServletResponse按照Http响应数据的格式给浏览器响应数据。Tomcat:servlet容器。
2024-05-14 17:11:02 224
原创 STL算法-迭代器
原文链接:https://blog.csdn.net/weixin_45389639/article/details/121618243。
2024-04-24 16:29:00 902
原创 STL set、multiset| map multimap
/ 内部rb_tree容器public://迭代器,set不可以通过迭代器修改元素set中所有操作,使用红黑树做,set这里可以看成一个container adapter。
2024-04-23 17:31:23 224
原创 RB-Tree
red-black tree(红黑树)是平衡二元搜索树(balanced binary tree)。其特征:排列规则有利于Search和Insert,并保持适度平衡—无任何节点过深。前者需要key在树是独一无二的(multimap/set不适用),后者key可以重复存在。rb_tree在使用中需要你提供4个参数:Key、Value、KeyofValue(提取Key的方法)、Compare(比较key的大小的方法)。Compare:Compare(比较key的大小的方法)
2024-04-23 17:17:31 232
原创 STL_deque_stack_queue
deque容器(双端队列)deque是一种双向开口的。deque支持从头尾两端进行元素的插入和删除。deque没有容量的概念,因为它是动态地以分段连续空间组合而成的。随时可以增加一段新的空间并连接起来。
2024-04-22 21:53:12 432
原创 STL Array、ForwardList源码剖析
参考文章: https://blog.csdn.net/weixin_45389639/article/details/121618243。
2024-04-22 21:20:50 559
原创 STL_vector源码剖析
STL2.91源码地址: https://github.com/lewischeng-ms/sgi-stl侯捷老师用的是 2.91,不同版本的STL差异很大,靠后版本的STL用了太多typedef,导致可读性很差本文参考博客: https://blog.csdn.net/weixin_45389639/article/details/121618243。
2024-04-22 20:37:35 341
原创 STL_List与萃取
1>traits所谓traits,可以理解为“萃取机”。作用就是:你丢给他什么东西,他会给你拿出你想要的特性。迭代器的特性:iterator_traits
2024-04-22 19:03:53 328
原创 批量删除c/c++中的注释
因为搬砖的缘故,需要批量删除文件夹中的注释网上看了一些帖子,跑起来和要求都有些不符合,所以写了一个简单的脚本 ,去除.c .cpp中的注释支持删除的注释有1 单行注释/*11111111111111*/2 以//开头的注释//2222222222223以//结尾的注释hello world //3333333333不会删除hello world,只删除结尾的//333334 /**/ 多行注释/***/或者这种类型/**************************
2021-05-14 23:28:18 1951
原创 2020-08-18 C语言实现链表
链表LinkList.cLinkList.hLinkListmain.cLinkList.c#include "LinkList.h"#include <stdio.h>#include <stdlib.h>// 创建List list_create(){ List l = {NULL,NULL,0}; return l;}// 初始化bool list_init(List* seq){ seq->head = NULL; seq->tail
2020-09-18 21:44:11 284
转载 github添加/删除文件(文件夹)
1.添加:1).在本地项目里,cd到本项目根路径下;2).执行添加:git add 文件/文件夹名称3).提交注释:git commit -m ‘提交xxx’4).最后:git push完成。2.删除:1).在本地项目里,cd到本项目根路径下;2).执行添加: git rm -r --cached ‘文件夹名’3).提交注释:git commit -m ‘删除xxx’4).最后...
2019-11-05 19:33:19 551
原创 Tinyhttp项目
#include <stdio.h>#include <sys/socket.h>#include <sys/types.h>#include <netinet/in.h>#include <arpa/inet.h>#include <unistd.h>#include <ctype.h>#inclu...
2019-10-11 17:48:36 367
原创 TinyHttp
//client#include <stdio.h>#include <string.h>#include <arpa/inet.h>#include <sys/socket.h>#include <stdlib.h>#include <fcntl.h>#include <unistd.h>void...
2019-09-18 09:08:48 921
原创 Socket套接字简单使用
//tcp_server#include <stdio.h>#include <arpa/inet.h>#include <sys/socket.h>#include <string.h>#include <stdbool.h> bool exiting = false; void* receive(void* arg)...
2019-09-09 20:23:47 181
转载 Linux实现myshell
#include<stdio.h>#include<stdlib.h>#include<unistd.h>#include<string.h>#include<sys/types.h>#include<sys/wait.h>#include<sys/stat.h>#include<fcntl.h...
2019-09-07 10:23:39 502 1
原创 Linux线程池
#include <pthread.h>#include <stdbool.h>#include <stdlib.h>#include <stdio.h>#include <string.h> #define WORK_THREAD_COUNT 6 typedef struct Task{ void (*pfunc...
2019-09-07 08:09:37 136
原创 Linux网络编程1:socket套接字入门
写一个时间上最简单的客户端和服务器:由客户端发一条数据,服务器接收 在将数据打印出来原理客户端/发送端必须指定连接/发送的IP(广播地址、回环地址或者某个具体地址)。必须指定连接/发送的port。服务器/接受端IP指定为通配地址、回环地址或者某个具体地址。必须指定绑定监听/接受的port。TCP客户端和服务器通信原理如图所示,先放代码://文件tcp_client.c#i...
2019-08-26 18:59:38 262
原创 Linux系统变成6:线程
//线程//1.轻量级进程,也有PCB 创建线程使用的底层函数和进程一样都是clone//clone克隆父进程的0-3G的用户空间,父进程的PCB//2.从内核看进程进程和线程一样的,都有各自不同的PCB,但是PCB中指向内存//资源的三级页表时相同的//创建进程,内存给进程分配4G的地址空间//进程如何索引到4G地址空间? 虚拟地址到物理地址的映射关系//Linux管理虚拟内存 采...
2019-08-23 22:04:11 130
原创 牛客:倒置字符串
将一句话的单词进行倒置,标点不倒置。比如 I like beijing.经过函数后变为:beijing. like I输入描述:每个测试输入包含1个测试用例: I like beijing. 输入用例长度不超过100输出描述:依次输出倒置之后的字符串,以空格分割1.先把字符串整体倒转反转前: I like beijing.反转后1: .gnijied ekil I2.把字符传中每...
2019-08-22 12:17:05 293
原创 2的N次方
对于一个整数N(512 <= N <= 1024),计算2的N次方并在屏幕显示十进制结果链接:https://www.nowcoder.com/questionTerminal/e9a4919b8848451d9aff81e3cdd133b1?toCommentId=3622476来源:牛客网#include<bits/stdc++.h>using namespa...
2019-08-22 11:30:14 479
原创 笔记4399
第一部分:基本概念及其它问答题1、关键字static的作用是什么?这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用:1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。3). 在模块内,一个被声明为静...
2019-08-22 10:31:08 236
原创 Linux系统编程5.1: 信号捕捉
转载:信号的三种状态及信号集函数地址: https://blog.csdn.net/xiaodu655/article/details/80246440int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact);参数1:对哪个信号捕捉参数2:信号的...
2019-08-19 12:30:19 132
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人