自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于Gitee上传代码以后主页没有显示贡献度(没有显示小绿块)

事情起因:在一个闲暇的下午,吃着火锅唱着歌,突然!我发现我的Gitee有一片白。起初,没有人在意这场灾难 当我首次发现这个问题的时候,我毫无波澜的认为是Gitee出现了BUG。

2023-05-29 17:35:38 1186 11

原创 SpringMVC

MVC是一种思想,SpringMVC是对MVC思想的具体实现。M-Model(模型)V-View(视图)C-Controller(控制器)

2023-05-28 13:44:40 1766 26

原创 关于 IO、存储、硬盘和文件系统

在计算机领域,IO指将数据从一个设备传输到另一个设备的过程。存储指将数据保存在内存或硬盘等设备中的过程。硬盘则是存储设备的一种。同时文件系统可以更有效地管理和组织硬盘或其他存储设备中的数据。

2023-04-29 21:27:11 1965 24

原创 了解三个Hash (HashMap, HashTable, ConcurrentHashMap)

本篇文章将从线程安全性、迭代器、扩容机制方面对Hashtable、HashMap和ConcurrentHashMap这三个都属于Map接口的实现类进行详细的比较。

2023-04-24 17:37:21 434 12

原创 Java 标准库中线程池的四种创建方式

1. 使用 Executors 工厂类创建固定大小的线程池。2. 使用 Executors 工厂类创建大小不受限制的线程池。3. 使用 ThreadPoolExecutor 构造函数自定义线程池的各项参数。4. 使用 ScheduledThreadPoolExecutor 创建周期性执行任务的线程池。

2023-04-20 21:51:23 342 16

原创 初始SpringBoot

SpringBoot称为Spring的脚手架.Spring是为了简化Java程序的开发诞生的, 而SpringBoot是为了简化Spring程序开发诞生的.所以称为Spring的框架.

2023-03-30 21:50:49 1428 28

原创 Spring

Spring 是包含了众多⼯具方法的 IoC(Inversion of Control) 容器(控制反转容器)

2023-01-10 19:59:29 805 22

原创 Cookie 和 Session 以及文件上传

HTTP 协议自身是属于 "无状态" 协议"无状态" 的含义指的是默认情况下 HTTP 协议的客户端和服务器之间的这次通信, 和下次通信之间没有直接的联系

2022-12-18 22:15:01 542 22

原创 关于Servlet编程(2)

Servlet中常见的类有三个.介绍过了HttpServlet类.我们再来看看另外两个.HttpServletRequestHttpServletResponse

2022-12-10 21:51:24 700 18

原创 关于Servlet编程(1)

init 在 HttpServlet 实例化之后被调用一次destory 在 HttpServlet 实例不再使用的时候调用一次

2022-12-09 22:14:13 456 20

原创 Postman安装和运行

要下载软件,还是同样的话,要去官网下载.这里我们直接将官网地址放在这里. https://www.postman.com/downloads/

2022-12-09 20:52:00 957 18

原创 使用Maven创建Servlet项目

System.out.println("hello servlet");resp.getWriter().write("hello servlet");

2022-12-08 21:05:43 2355 20

原创 Tomcat的安装和运行

安装Tomcat 安装某一个软件,我们当然是要去官网.为了防止很多朋友找不到资源,我们这里直接放出官网路径. https://tomcat.apache.org/download-80.cgi

2022-12-08 15:30:14 937 21

原创 构造HTTP请求 以及 关于HTTPS的加密

同步 :结果是调用者主动关注的.异步 :结果不是调用者主动关注的.阻塞 :等待过程中不会干别的事情非阻塞 :等待过程中会干别的事情

2022-12-07 19:16:21 559 22

原创 HTTP请求和响应(补充HTTP协议)

Cookie 具体的组织形式1. 先按照域名来组织, 针对每个域名, 分别分配一个小房间(小黑屋).2. 一个小房间里,又会按照键值对的方式来组织数据.

2022-12-06 18:02:14 1594 32

原创 HTTP协议

GET POST 没有本质区别.因为现在的网络环境中使用GET的场景是可以替换成POST,使用POST的场景也可以替换成GET

2022-12-05 17:13:46 1288 36

原创 HTTP抓包神器---Fiddler

这里为了防止有些人在网上找不到下载路径.我们直接把下载路径放在下面.https://www.telerik.com/download/fiddler

2022-12-05 13:49:56 1388 14

原创 TCP/IP五层协议栈(3)

已经有IP地址了为啥还要物理地址(mac地址)?原因是因为当年网络层协议和数据链路层协议.是各自独立研发出来的.所以现在的现状就是 mac地址和IP地址同时使用.表示不同的功能.

2022-12-03 20:15:27 2013 32

原创 TCP/IP五层协议栈(2)

1. 对于可靠性有一定要求一般使用TCP(日常开发中的大多数情况都是基于TCP)2. 对于可靠性要求不高,对于效率要求更高的一般使用UDP(机房内部的主机之间的通信,分布式系统中)

2022-12-01 17:45:02 1062 50

原创 TCP/IP五层协议栈(1)

- URG: 紧急报文段- ACK: 确认报文段- PSH: 推送报文段- RST: 复位报文段- SYN: 同步报文段- FIN: 结束报文段

2022-11-25 21:20:37 1696 24

原创 Socket套接字(Java)

import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.SocketException;

2022-11-23 19:05:48 752 22

原创 网络原理(Java网络编程)

IP地址是一个32位的二进制数,通常被分割为4个"8位二进制数"(也就是4个字节),一般用点分十进制表示,如 127.0.0.1

2022-11-22 15:42:20 922 24

原创 Java文件读写数据流

1. FileInputStream2. FileOutputStream3. FIleReader4. FileWriter

2022-11-18 00:18:15 4596 10

原创 文件操作(Java)

针对硬盘这种持久化存储的I/O设备,当我们想要进行数据保存时,往往不是保存成一个整体,而是独立成一个个的单位进行保存,这个独立的单位就被抽象成文件的概念

2022-11-12 22:19:13 571 10

原创 synchronized的优化机制和一些多线程的常见类

synchronized 是一个自适应的锁是乐观锁也是悲观锁不是读写锁,是普通互斥锁是轻量级锁,也是重量级锁轻量级锁基于自旋的方式实现,重量级锁基于挂起等待实现是非公平锁是可重入锁

2022-11-11 21:31:20 946 8

原创 常见锁策略与CAS介绍

1.乐观锁 vs 悲观锁2.读写锁 vs 普通的互斥锁3.重量级锁 vs 轻量级锁4.挂起等待锁 vs 自旋锁5.公平锁 vs 非公平锁6.可重入锁 vs 不可重入锁

2022-11-08 16:03:32 911 11

原创 定时器 和 线程池

认为内核态效率低,不一定是真的低,而是随着代码进入内核态,就不可控了.内核可能还要做其他的事情内核什么时候把活干完,把结果给你 (有时候快,有时候慢)

2022-11-03 14:06:12 394 8

原创 Java阻塞队列的模拟实现

Java中是有阻塞队列的实现的.BlockingQueue 是阻塞队列的接口对于接口也有多种类型不同的实现LinkedBlockingQueueArrayBlockingQueue

2022-10-30 18:23:19 351 10

原创 Java多线程(3)

加锁的时候对获取的资源进行排序,使得获取资源有固定的顺序,所有线程都遵守同样的规则顺序,就不会出现环路等待.

2022-10-28 09:36:31 1151 13

原创 Java多线程(2)

1. 线程是抢占式,进程间的调度充满随机性. 2. 多个线程对同一个变量进行修改操作 3. 针对变量的操作不是原子的 4. 内存可见性(属于编译器优化) 5. 指令重排序(属于编译器优化)

2022-10-26 22:47:45 1547 13

原创 Java多线程(1)

Thread.sleep(3 * 1000);这里设置的时间是**在这个时间内不可以唤醒该线程**,而不是时间结束就唤醒该线程.休眠时间结束后会进入就绪队列等待调用.

2022-10-24 15:44:10 323 8

原创 C语言结构体大小的计算

struct S1{ char c1; int i; char c2;};printf("%d\n", sizeof(struct S1));

2022-10-22 22:24:28 620 13

原创 C语言文件操作函数

磁盘上的文件是文件。但是在程序设计中,我们一般谈的文件有两种:程序文件、数据文件(从文件功能的角度来分类的)。

2022-10-12 16:33:28 359 16

原创 C语言动态内存分配函数

有时候我们需要的空间大小在程序运行的时候才能知道,那数组的编译时开辟空间的方式就不能满足了。这时候就只能试试动态存开辟了

2022-10-07 20:14:49 235 10

原创 Java单例模式

- 单例模式是一种常用的软件设计模式,其定义是单例模式的类只能允许一个实例存在- 也就是说,只允许内存创建一次对象的设计模式.并提供一个获取方法以供使用.

2022-09-28 21:03:34 570 11

原创 C语言string.h部分函数模拟实现(2)

void * memcpy ( void * destination, const void * source, size_t num );

2022-09-18 18:57:45 270 6

原创 C语言函数介绍:strtok函数

# **char * strtok ( char * str, const char * sep );**

2022-09-18 18:06:58 483 9

原创 C语言string.h部分函数模拟实现(1)

/** 长度不受限的字符串函数* strcpy* strcat* strcmp* \0* 长度受限的字符串函数* strncpy* strncat* strncmp*/

2022-09-17 16:31:37 448 9

原创 整型数据在内存中的存储(C语言)

**大端(存储)模式**,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中.**小端(存储)模式**,是指数据的低位保存在内存的低地址中,而数据的高位,保存在内存的高地址中.

2022-09-05 22:15:49 630 10

原创 使用idea创建Servlet项目(适用于Intellij IDEA 2021.1.3版本)

## 准备工作- 安装好的Tomcat- IDEA 2021.1.3- 安装好的Java运行JDK

2022-09-05 22:00:51 1269 9

空空如也

空空如也

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

TA关注的人

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