自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 每日任务:网络协议对比:HTTPS/HTTP与TCP/UDP

如果证书没有问题,客户端会生成一个随机的对称加密密钥,并从数字证书中取出服务器的公钥加密这个密钥,然后发送给服务器。2.然后服务器端在收到这个ClientHello,从中选择服务器支持的版本和套件,发送ServerHello消息:(证书验证)4.服务器使用自己的私钥解密得到对称加密密钥,此时客户端和服务器都有了相同的密钥,可以进行加密和解密操作。1.当TCP建立连接之后,TLS握手的第一步由客户端发起,发送ClientHello的消息到服务器。(3)客户端支持的密码套件列表,如 RSA 加密算法。

2024-07-28 08:53:56 570

原创 每日任务:HTTP从1.0到3.0的演进

HTTP 是一个在计算机世界里专门用来在两点之间传输数据的约定和规范。1.HTTP/1.1 默认支持持久连接,允许在一个TCP连接上发送多个HTTP请求和响应,减少了连接建立和关闭的开销。而HTTP/1.0 默认为短连接,每次请求都需要建立一个TCP连接,并通过Connection: keep-alive头来实现持久连接。2.HTTP/1.1 支持管道化(不是默认开启),允许客户端在第一个请求的响应到达之前发送多个请求,这可以减少等待时间,提高效率。

2024-07-27 20:44:27 294

原创 每日任务:HTTP状态码详解及强缓存与协商缓存的区别

强缓存和协商缓存是HTTP缓存机制的两种类型,它们用于减少服务器的负担和提高网页加载速度。强缓存是指浏览器在请求资源时,不会发送任何请求头,直接从本地缓存中读取资源,从而提高响应速度。Expires头部:指定资源过期时间,如果在过期时间之前再次请求该资源,浏览器将直接从缓存中读取资源。Cache-Control头部:可以指定资源的缓存策略,包括public、private、no-cache等,控制浏览器的缓存行为。协商缓存。

2024-07-25 10:10:31 535

原创 每日任务:报文构成、请求类型及GET与POST差异分析

HTTP报文分为请求报文和响应报文;(1)请求报文主要由构成。空行是用于分隔请求头部和请求主体。而请求体通常用于 POST 和 PUT 请求,包含发送给服务器的数据。(2)一个标准的HTTP响应报文包含了状态行包含HTTP版本、状态码和状态消息。例如:HTTP/1.1 200 OK响应头部也是以键值对的形式提供的额外信息,类似于请求头部,用于告知客户端有关响应的详细信息。空行(Empty Line)在响应头和响应体之间,表示响应头的结束。

2024-07-23 21:00:12 802

原创 每日任务:从输入 URL 到页面展示到底发生了什么

DNS解析时会按本地浏览器缓存->本地Host文件->路由器缓存->DNS服务器->根DNS服务器的顺序查询域名对应IP,直到找到为止。5.握手成功之后,浏览器会构建请求行、请求头等信息,并把它和域名相关的cookie等数据附加到请求头中,向服务器构建请求信息;2.首先会先检查浏览器缓存里是否有缓存资源,如果缓存中有,会直接在浏览器上显示页面内容,如果没有,在发送http请求之前,浏览器会向DNS服务器发送一个查询请求;6.服务器接收到请求信息后,根据请求生成响应数据。7.最后浏览器解析响应并渲染页面。

2024-07-22 22:08:39 327

原创 每日任务:TCP/IP模型和OSI模型的区别

TCP提供可靠的数据传输,确保数据的正确性和完整性;OSI模型由七个层次组成,从下到上依次为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。该层对应OSI模型的数据链路层和物理层,负责在计算机和网络硬件之间传输数据,例如以太网和wifi等,并提供错误检测和纠正功能。该层与OSI模型的应用层和表示层以及会话层类似,通过各种协议提供网络应用程序的功能,如SMTP,HTTP,FTP等。该层对应OSI模型的网络层,主要协议是IP,它负责数据包的路由和转发,选择最佳路径将数据从源主机传输到目标主机。

2024-07-22 21:51:30 448

原创 Ngnix

动静分离,在我们的软件开发中,有些请求是需要后台处理的,有些请求是不需要经过后台处理(如:css、html、jpg、js等等文件),这些不需要经过后台处理的文件成为静态文件。我们公司项目刚刚刚上线的时候,并发量小,用户使用的少,所以在低并发的情况下,一个jar包启动应用就够了,然后内部tomcat返回内容给用户。但是慢慢的,使用我们平台的用户多了,并发量慢慢慢增大了,这时候一台服务器满足不了我们的需求了。所谓负载均衡,就是把大量的请求按照我们指定的方式均衡的分配给集群中的每台服务器。

2024-04-19 00:05:53 377

原创 SpringCloud实用篇(四)——Nacos

3.在微服务中添加bootstrap.yml,配置nacos地址、当前环境,服务名称和文件后缀名。这些决定了程序启动时去nacos读取哪个文件。1.实际部署时,需要给做反向代理的nginx服务器设置一个域名,这样后续如果有服务器迁移nacos的客户端也无需更改配置.nacos是阿里巴巴的产品,现在是springcloud的一个组件,相比于eureka的功能更加丰富,在国内备受欢迎。4.修改order-service&user-service的配置文件,注释eureka的配置添加nacos配置。

2024-04-14 14:53:16 1040

原创 SpringCloud实用篇(二)——搭建eureka服务

1.创建项目,引入spring-cloud-starter-neflix-eureka-server的依赖。1.引入spring-cloud-start-netflix-eureka-client的依赖。1.引入spring-cloud-start-netflix-eureka-client的依赖。在此处遇到了一个bug,此bug由于配置文件是cv过来的所以存在不知名的空格影响了项目的允许。下面这部分是最重要的,下面就是自己和其他服务被注册的信息。上面就是注册自己的配置(因为自己也是一个微服务)

2024-03-30 18:31:12 650

原创 SpringCloud实用篇(一)

/ 2.1 url的地址为user-service模块启动的端口,因为是向user-service发送请求。上面的demo中,user就是服务提供者(接口被调用),order就是服务消费者(调用了别人的接口)消费者:一次业务中,调用其他微服务的服务(调用其他微服务提供的接口,调用别人的接口)提供者:一次业务中,被其他微服务调用的服务 (提供接口给其他微服务,接口被调用了)思考:服务A调用服务B,服务B调用服务C,那么服务B是什么角色?2.如果是服务B被服务A调用了,那么服务B就是服务提供者。

2024-03-28 20:45:10 929

原创 访问修饰符细节、super和this的比较

3)子类访问父类属性和方法,但不能访问父类的private属性和方法(super.属性名/super.方法名)2)只有默认的和public才能修饰类!,并且遵循上述访问权限的特点。1)修饰符可以用来修饰类中的属性,成员方法以及类。4)成员方法的访问规则和属性完全一样。

2024-02-20 20:04:31 177

原创 WebSocket

Websocket是一种网络通信协议。RFC6455定义它的通信标准。WebSocket是一种HTML5开始提供的一种在单个TCP连接上进行全双工通讯的协议HTTP协议是一种无状态的、无连接的、单向的应用层协议。它采取了请求/响应模型。通信请求只能由客户端发起,服务端对请求做出应答处理。这种通信模型有一个弊端:HTTP协议无法实现服务器主动向客户端发起消息。这种单向请求的特点,注定如果服务器有连续的状态变化,客户端要获知就非常麻烦。大多数Web应用程序将通过频繁的异步AJAX请求实现长轮询。

2024-02-20 15:15:57 730

原创 面试题-02

所谓多态就是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。因为在程序运行时才确定具体的类,这样,不用修改源程序代码,就可以让引用变量绑定到各种不同的类实现上,从而导致该引用调用的具体方法随之改变,即不修改程序代码就可以改变程序运行时所绑定的具体代码,让程序可以选择多个运行状态,这就是多态性。

2024-02-19 00:02:01 693

原创 面试题-01

字节码是JVM可以理解的代码就叫做字节码(即源程序(.java文件)通过编译产生的产物(.class文件)),它不面向任何特定的处理器,只面向JVM,而且,由于字节码并不针对一种特定的机器,因此,Java 程序无须重新编译便可在多种不同操作系统的计算机上运行可移植性:由于字节码是中间代码,并不针对一种特定的机器,因此Java程序无须重新编译就可以在多种操作系统的计算机上运行(不同的操作系统和硬件平台可能需要不同的JVM实现,但是它们都可以执行相同的字节码程序)。

2024-02-17 22:43:48 657

原创 作用域基本使用

3.属性生命周期较长,伴随着对象的创建而创建,伴随着对象的死亡而死亡。局部变量,生命周期较短,伴随着它的代码块的执行而创建,伴随代码块的结束而死亡,即在一次方法调用过程中。4.全局变量可以不赋值,直接使用,因为有默认值,局部变量必须赋值后,才能使用,因为没有默认值。局部变量:也就是除了属性之外的其他变量,作用域为定义它的代码块中。2.在同一个作用域域中,比如在同一个成员方法中,两个局部变量,不能重名。1.在java编程中,主要的变量就是属性(成员变量)和局部变量。局部变量:只能在本类中对应的方法中使用。

2024-02-17 16:49:34 162

原创 java8新特性——StreamAPI

1.程序运行中,流Stream只能使用一次,使用后会默认关闭,不能重复使用;2.在开发过程中,建议使用Stream.of(list),解决list为null的问题;使用list.stream()之前需要判断list是否为null,避免报错空指针异常(java.lang.NullPointerException)。3.stream流遍历获取的对象是原对象。

2024-02-16 20:27:26 628

原创 对象内存与方法调用机制

对象、字符串和数组都是引用类型,指向的数我们以下面main方法部分代码片段为例:首先执行mian方法,会在栈里创建一个独立的main栈空间(这里说成main栈是为了便于区分栈),在执行Cat cat = new Cat(),执行完后会在堆中产生一个对象空间,cat指向该对象空间,cat的基本类型age数据会直接存到堆信息中,由于name,color是字符串所以会在方法区中常量池在开创一个空间,用来存储他们的数据,此时堆中name与color指向该空间地址。

2024-02-04 23:55:36 275

原创 Java使用规范

定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)特点:关键字中的所有字母都是小写。

2024-02-04 23:30:41 303

原创 数组快速入门

数组可以存放多个同一类型的数据。数组也是一种数据类型,是引用类型。即:数组就是一组数据数据类型 数组名[] = new 数据类型[大小]/***循环输入5个成绩,保存到double数组,并输出*///1.创建了一个double数组,大小为5//2.循环输入//source.length 表示数组的大小/长度i++){System.out.println("请输入第"+(i+1)+"个元素的值");//输出,遍历数组。

2024-02-01 11:41:17 409

原创 基本数据类型细节【java】

1.java个整数类型有固定的范围和字段长度,不受具体OS【操作系统】的影响,以保证java程序的移植性2.java的整型常量默认为int型,声明long型常量须在后面加'l'或者'L'3.Java程序中变量常声明为int型,除非不足以表示大数,才使用long4.bit:计算机的最小存储单位。byte:计算机中基本存储单元,1byte=8bit。

2024-01-28 18:20:52 425

原创 每次请求sessionid变化【SpringBoot+Vue】

浏览器第一次访问时会获得sessionid存在cookie中,后续访问如果有sessionid存着,获取当前信息时会直接用,但是并没有,由上面可以知道浏览器不能存储cookie,导致访问后端时有返回浏览器一个session,最终无法获取到登录账号的当前用户信息。我一开始使用接口文档做了后端接口测试,测试发现当访问主页面时前端能成功接受到数据,本以为皆大欢喜了,在当我接入获取当前信息接口时并测试时发现获取不到信息,我又使用apifox进行测试接口能够获取到数据,于是我使用F12进行调试。

2024-01-27 03:28:10 909

原创 从零开始搭建个人博客

Hexo是一款基于Node.js的静态博客框架,依赖少易于安装使用,可以方便的生成静态网页托管在GitHub和Coding上,是搭建博客的首选框架!!!我为什么会选择hexo来搭建博客呢?对于小白来说它也是不二之选,对于处于第三方大平台上的我,比较不自由,我个人认为它的界面美观十分优雅,它的搭建成本也低,我们只需一台电脑就可以搭建。接下我们直接搭建博客!!!

2023-12-30 16:28:38 711

原创 Cookie与Session详解

Cookie:客户端会话技术,将数据保存到客户端,以后每次请求都携带Cookie数据进行访问,Cookie 数据存放在浏览器端(客户端)官方定义:Cookie是由服务器端生成,发送给User-Agent(一般是浏览器),浏览器会将Cookie的key/保存到某个目录下的文本文件内,下次请求同一网站时就发送该给服务器(前提是浏览器设置为启用cookie)。名称可以由端开发自己定义,对于而言也可以直接写入jsessionid,这样服务器可以知道该用户是否合法用户以及是否需要重新登录等。

2023-12-29 01:54:49 836

原创 MySQL主从复制(一主两从)架构搭建(阿里云服务器)

1.建立数据库master2.复制master的配置文件到docker3.卸载并安装master。

2023-12-07 11:29:39 775

原创 序列化与反序列化

序列化:指将对象转化为字节序列的过程,以便于存储或在网络中传输对象反序列化:指字节序列转化为对象的过程,从IO流恢复成原来的对象对象的序列化的目标就是将对象保存到磁盘当中,或者允许在网络中直接传输对象。对象序列化机制允许把内存中的Java对象转换成平台无关的二进制流,从而允许把这种二进制流持久地保存到磁盘上,通过网络将这种二进制流传输到另一个网络节点。其他程序一旦获得了这种二进制流,都可以将这种二进制流恢复成原来的Java对象。

2023-10-05 13:48:14 74

原创 【Git】基本操作

1.设置用户签名git config -global user.name 用户名2.设置用户签名git config -global user.email 邮箱。

2023-10-04 01:59:29 54 1

原创 Maven中Servlet映射和原理

在web.xml文件中配置servlet映射标签优先级:指定了固定的映射路径优先级最高,如果找不到则会走默认的路径请求写了默认的请求路径后会把先前指定的jsp路径覆盖。

2023-09-04 18:38:04 69 1

原创 Maven的操作

Maven 是一个项目管理和整合工具,基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建、报告和文档的软件项目管理工具管理jar包约定优于配置Maven 使用约定而不是配置,意味着开发者不需要再自己创建构建过程。构建就是以我们编写的 Java 代码、框架配置文件、国际化等其他资源文件、JSP 页面和图片等静态资源作为“原材料”,去“生产”出一个可以运行的项目的过程。

2023-08-22 06:13:44 82 1

原创 【javaweb】ServletContext

服务器会为每一个工程创建一个对象,这个对象就是ServletContext对象。setAttribute(name,value)【name是String类型,value是Object类型】——往域对象里面添加数据,添加时以key-value形式添加。servletContext是一个域对象,域对象是服务器在内存上创建的存储空间,用于在不同动态资源(servlet)之间传递与共享数据。web容器在启动的时候,他会为每个web程序都创建一个对应的ServletContext对象,它代表当前的web应用。

2023-08-19 09:22:52 44

原创 【JavaScript】jQuery基础篇

DOM对象:使用JavaScript中的方法获取页面中的元素返回的对象就是DOM对象,不能使用jquery定义的方法。jQuery对象:jquery对象就是使用jquery的方法获取页面中的元素返回的对象就是jQuery对象。可以使用jquery定义的方法。

2023-08-10 12:06:05 66

原创 【JavaScript】学习笔记2

页面加载完成之后,常用于做页面js代码初始化操作事件是电脑输入设备与页面进行交互的响应。我们称之为事件。

2023-08-09 11:09:57 40

原创 Ant Design Pro V5项目无法启动问题解决

今天准备使用一下Ant Design Pro做项目,全程按照官网文档步骤来进行项目搭建,在这里我使用的node.js版本是16.15.0,npm版本是8.5.5,当我第一次ant design pro来做一个属于我自己的管理系统时突然发现ant design竟然运行不了,于是我找呀找,试n个方法后...,终于找到了解决方案。删除index.md,把依赖删掉和umi文件夹删除,yarn(yarnpkg代替也行)一下,然后运行。umi版本选择4(不太建议使⽤ umi 4 了,兼容性不好。

2023-08-08 19:32:02 270

原创 【JavaScript】学习笔记1

(Java脚本)是一种基于对象(Object)和事件驱动( Event Driven)并具有安全性能的脚本语言,使用JavaScript可以轻松的实现与HTML的互操作,并且完成丰富的页面交互效果,它是通过嵌入或调入在标准的HTML语言中实现的,它的出现弥补了HTML的缺陷,是java与HTML折衷的选择。基于对象:指的是程序的内部已经为用户提供好了若干个对象,用户直接使用这些对象即可。面向对象:java属于面向对象的语言,面向对象是指用户自己定义类,对象需要用户自己产生。

2023-08-08 18:12:02 31

原创 Docker学习笔记

(docker run -it 容器编号) 的运行原理。

2023-08-07 18:56:24 126 1

原创 CSS基础入门

1.CSS,即“Cascading Style Sheet(层叠样式表)”,是用来控制网页的外观的一门技术。2.HTML、CSS和JavaScript是前端技术中最核心的三个元素。HTML控制网页的结构,CSS控制网页的外观,而JavaScript控制网页的行为。3.HTML、CSS和JavaScript的关系如下:“HTML是网页的结构,CSS是网页的外观,而JavaScript是页面的行为。

2023-08-06 00:25:05 43

原创 HTML基础入门

(1)声明DOCTYPE> 声明必须是 HTML 文档的第一行,位于 标签之前。DOCTYPE> 声明不是 HTML 标签;它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令,这样浏览器才能获知文档类型。HTML5 不基于 SGML,所以不需要引用 DTD。现在主要记住:HTML5的声明方式:封装的数据2.标签名大小写都行3.标签拥有自己属性基本属性:bgcolo="red"(修改简单的样式效果)

2023-08-05 00:17:37 48

原创 JDBC连接池

首先看如下图:图片可能有点丑!!!(注:上面方块是在连接池里的连接资源,下面火柴人是用户)1、池子中,我们有4个连接的资源2、我们有5个用户3、当我们用户需要的时候呢,就把连接给用户,此时图就成这样了1、如上图所示,一个用户则用一个连接2、多出来用户来并没有连接可以用(1)、等其他用户用完,我再用(2)、或者重新创建一个连接给连接池,连接池再分配给我们的用户(如图)#当用户用完之后,会把连接还给连接池,并不关闭。

2023-08-01 17:54:47 98

原创 电脑维护的艺术:让您的IT武器更持久、更强大

一台好电脑不仅要有出色的硬件配置,更需要主人细心的维护来确保其长久的使用寿命和高效的性能。本文将为您提供一些实用的电脑维护建议,让您的IT武器更持久、更强大。本章将详细介绍各个硬件部件的功能和性能指标,帮助您更好地了解您的电脑。通过学习本文提供的维护建议,您将成为电脑维护的专家,让您的IT武器更持久、更强大,助您在学习和工作中取得更大的成功。本章将讨论备份的重要性,以及如何选择合适的备份方法和工具。(注:本文将提供更详细的信息、技巧和示例,以帮助读者全面了解电脑维护的重要性和实践方法。

2023-08-01 10:25:01 100

原创 Java基础之网络编程

1.,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,等功能,保证数据能从一端传到另一端。tcp连接就像打电话,两者之间必须有一条不间断的通路,数据不到达对方,对方就一直在等待,除非对方直接挂电话。先说的话先到,后说的话后到,有顺序。

2023-07-31 16:10:54 100

原创 JDBC拓展

前面Jdbc的基本使用使用已经讲得差不多了,但如果我们经常要创建连接,关闭连接的话,那么每次都要写重复的代码,显然这样非常的麻烦,为了避免这种情况,编写了一个JdbcUtil工具类,如下。

2023-07-31 11:52:36 94

空空如也

空空如也

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

TA关注的人

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