自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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原理

起步依赖:简化pom文件中的依赖配置自动配置:简化Bean的申明和Bean的配置。

2024-05-19 21:36:42 287

原创 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

原创 事物的传播机制

Required:需要事物,没有事物创建新事物。Required_NEW:总是创建新事物。

2024-05-18 20:57:46 124

原创 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

原创 Mybatis

表种字段自动封装到对象的属性中。表中字段与类中属性名保持一致。

2024-05-16 10:59:09 204

原创 【多表查询】---------------------三大范式

左外连接:左表全部数据,即使数据没有和右表产生关联。右外连接:右表全部数据,即使数据没有和左表产生关联。

2024-05-16 10:21:56 229

原创 mysql 查询---多表设计

【代码】mysql 查询---多表设计。

2024-05-15 21:46:34 320

原创 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

原创 java同步代码块、同步方法 、Lock锁

【代码】java同步代码块、同步方法 、Lock锁。

2024-05-13 16:03:23 139

原创 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

原创 【Java_2 == 和equals 详解】

== equals

2023-07-23 17:41:32 153

原创 【Java_1 instanceof 详解】

intanceof 关键字 详解

2023-07-23 16:49:36 201

原创 批量删除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关注的人

提示
确定要删除当前文章?
取消 删除