自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 收藏
  • 关注

原创 docker-file 网络

加入自定义网络的容器可以互相访问,并且可以通过容器名互相访问,不需要知道容器名。新加入的网卡容器加入网络 docker network connect heima nginxdocker inspect nginx 查看 多出一个network。

2024-05-21 22:54:36 218

原创 SpringBoot原理

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

2024-05-19 21:36:42 244

原创 SpringBoot Bean

加上Bean注解,使用通过Aotuwired注入第三方Bean 可以通过Bean注解的name value 指定bean名称,默认是方法名第三方Bean需要注入其他Bean,可以通过形参自动装配,根据类型从IOC容器找到Bean对象注入。

2024-05-19 20:26:25 304

原创 Java AOP

切入点表达式 : 返回值 包名 + 类名 + 方法(方法参数, …要在其他类中使用,pointcut修饰的方法改为public。为目标对象生成代理对象,程序执行的时候注入的是代理对象。自定义注解MyLog,要匹配哪个方法就在方法上加注解。原始方法前开启事物,原始方法结束后 提交/回滚事物。调用代理对象的list方法,已经进行了功能的增强。可以获得目标方法的 方法名 参数 类名等信息。环绕通知,原始方法之前和之后都可以执行。执行业务层方法时,运行共性方法。可以被AOP控制的方法。匹配有特定注解的方法。

2024-05-18 21:52:46 161

原创 事物的传播机制

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

2024-05-18 20:57:46 91

原创 Filter和Interceptor

浏览器接收响应回来的数据 自动将cookie存储在本地,服务器端接收到请求对请求进行统一拦截,校验token。后续请求当中浏览器将cookie携带到服务器。服务器自动将cookie响应给浏览器。

2024-05-18 15:57:06 97

原创 sprinboot配置文件

Value注解读取配置文件,properties配置文件。将spring配置文件中的值自动注入对象的属性中。配置文件值赋值给AliOSSUtils中的属性。每个成员变量加value注解,繁琐。

2024-05-18 11:41:45 115

原创 Mybatis

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

2024-05-16 10:59:09 174

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

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

2024-05-16 10:21:56 202

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

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

2024-05-15 21:46:34 288

原创 mysql索引失效和count(*)

也就是 like %xx 或者 like %xx% 这两种方式都会造成索引失效。因为索引 B+ 树是按照「索引值」有序排列存储的,只能根据前缀进行比较。

2024-05-15 15:21:47 220

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

原创 Java获取请求参数

/请求参数名与形参中数组名保持一致//集合接收,请求参数名和集合变量名相同// 加上注解@RequestParam//接收json格式的数据,加上注解@RequestBody//路径参数,请求的参数是路径的一部分,id是可变的。

2024-05-14 19:32:58 406

原创 Tomcat

springboot开发的入门程序,springboot底层提供servlet程序,DispatcherServlet。HttpServletRequest解析请求信息,应用程序可以通过Request对象获取请求信息。HttpServletResponse按照Http响应数据的格式给浏览器响应数据。Tomcat:servlet容器。

2024-05-14 17:11:02 199

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

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

2024-05-13 16:03:23 106

原创 STL算法-迭代器

原文链接:https://blog.csdn.net/weixin_45389639/article/details/121618243。

2024-04-24 16:29:00 862

原创 STL set、multiset| map multimap

/ 内部rb_tree容器public://迭代器,set不可以通过迭代器修改元素set中所有操作,使用红黑树做,set这里可以看成一个container adapter。

2024-04-23 17:31:23 197

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

原创 STL_deque_stack_queue

deque容器(双端队列)​deque是一种双向开口的。deque支持从头尾两端进行元素的插入和删除。deque没有容量的概念,因为它是动态地以分段连续空间组合而成的。随时可以增加一段新的空间并连接起来。

2024-04-22 21:53:12 408

原创 STL Array、ForwardList源码剖析

参考文章: https://blog.csdn.net/weixin_45389639/article/details/121618243。

2024-04-22 21:20:50 526

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

原创 STL_List与萃取

1>traits所谓traits,可以理解为“萃取机”。作用就是:你丢给他什么东西,他会给你拿出你想要的特性。迭代器的特性:iterator_traits

2024-04-22 19:03:53 304

原创 【Java_2 == 和equals 详解】

== equals

2023-07-23 17:41:32 131

原创 【Java_1 instanceof 详解】

intanceof 关键字 详解

2023-07-23 16:49:36 136

原创 批量删除c/c++中的注释

因为搬砖的缘故,需要批量删除文件夹中的注释网上看了一些帖子,跑起来和要求都有些不符合,所以写了一个简单的脚本 ,去除.c .cpp中的注释支持删除的注释有1 单行注释/*11111111111111*/2 以//开头的注释//2222222222223以//结尾的注释hello world //3333333333不会删除hello world,只删除结尾的//333334 /**/ 多行注释/***/或者这种类型/**************************

2021-05-14 23:28:18 1641

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

转载 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 530

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

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

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

转载 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 448 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 109

原创 Linux网络编程1:socket套接字入门

写一个时间上最简单的客户端和服务器:由客户端发一条数据,服务器接收 在将数据打印出来原理客户端/发送端必须指定连接/发送的IP(广播地址、回环地址或者某个具体地址)。必须指定连接/发送的port。服务器/接受端IP指定为通配地址、回环地址或者某个具体地址。必须指定绑定监听/接受的port。TCP客户端和服务器通信原理如图所示,先放代码://文件tcp_client.c#i...

2019-08-26 18:59:38 220

原创 Linux系统变成6:线程

//线程//1.轻量级进程,也有PCB 创建线程使用的底层函数和进程一样都是clone//clone克隆父进程的0-3G的用户空间,父进程的PCB//2.从内核看进程进程和线程一样的,都有各自不同的PCB,但是PCB中指向内存//资源的三级页表时相同的//创建进程,内存给进程分配4G的地址空间//进程如何索引到4G地址空间? 虚拟地址到物理地址的映射关系//Linux管理虚拟内存 采...

2019-08-23 22:04:11 114

原创 牛客:倒置字符串

将一句话的单词进行倒置,标点不倒置。比如 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 271

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

原创 笔记4399

第一部分:基本概念及其它问答题1、关键字static的作用是什么?这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用:1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。3). 在模块内,一个被声明为静...

2019-08-22 10:31:08 208

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

原创 Linux 系统编程5:信号

查看linu下有哪些信号:kill -l 哪里会用到信号,比如你想结束掉一个进程 :ps -aux 查看进程kill 结束进程kill传递一个信号,信号会导致进程终止windows任务管理器也是一样的道理,发送一个信号,导致进程终止man 7 signal linux中查看信号的机制信号产生种类终端特殊按键 Ctrl+c SIGINT Ctrl+z SIGTSTP ...

2019-08-16 20:41:20 174

原创 Linux系统编程4:共享内存mmap

mmap可以把磁盘文件的一部分直接映射到内存,这样文件的位置就有对应的地址对文件的读写可以直接用指针来做而不需要read writeshared 映射private 映射修改内存中的数据,磁盘当中跟着修改shared否则private映射 ,内存当中修改不影响磁盘man mmap 查看这个函数的使用void *mmap(void *addr, size_t length, int ...

2019-08-15 23:52:16 119

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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