自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mysql数据备份出现unknow command “\b”

mysql数据备份时出现这个问题是怎么回事呀😵

2023-02-24 00:06:32 400 1

原创 JavaScript常用事件

概述: JS事件是当用户与网页进行交互时发生的事情,例如单机某个链接或按钮、在文本框中输入文字、按下键盘上的某个按键、移动鼠标等等。当事件发生时,可以使用JavaScript中的事件处理程序来检测并执行某些特定的程序。 一般情况下事件的名称都是以单词on开头的,例如点击事件onclick、页面加载事件onload等。一、鼠标事件onclick: 单击事件ondblclick: 双击事件onmousedown:鼠标按钮被按下onmouseup:鼠标按键被松开o

2022-11-21 00:30:51 1354

原创 Autowired的底层实现原理

1、概述使用spring开发时,进行配置主要有两种方式,一是的方式,二是java config的方式。spring技术自身也在不断的发展和改变,从当前springboot的火热程度来看,java config的应用是越来越广泛了,在使用java config的过程当中,我们不可避免的会有各种各样的注解打交道,其中,我们使用最多的注解应该就是@Autowired注解了。这个注解的功能就是为我们注入一个定义好的bean2、应用:2.1、应用与构造方法注入2.2、应用与setter方法注入。

2022-10-26 21:30:24 933

原创 TCP协议的拥塞控制

1.TCP协议作为一个面向连接的,可靠的传输层协议,具备“可靠性传输”,“流量控制”,“拥塞控制”的功能。2.简单说说“拥塞控制”拥塞控制:在报文传输过程中,如果发送方很长时间都没有收到来自接收方发送的确认应答ACK,就会认为接收方没有接收到报文,从而会继续发送同一个报文,如果重复发送的报文数目过多,就会造成网络拥堵,进入拥塞状态,TCP协议主要通过四个算法“慢开始”,“”,“”,“”来进行拥塞控制,避免网络拥塞。发送方还需要维护一个叫做拥塞窗口(cwnd。

2022-10-08 19:42:22 778 3

原创 浏览一个网站的完整过程

通过HTTP协议,以TCP作为底层协议,过程如下:

2022-09-22 19:50:03 808

原创 TCP与UDP的区别

固定(源端口,目的端口,序列号,确认号,数据偏移,保留,控制位,窗口,检验和,紧急指针)不固定选项和填充字段最小为20字节,最大为60字节。因为数据偏移的单位是4字节,最大1111=15,15×4=60!"数据偏移"是数据部分到首部的偏移量,其实也就是首部的长度。才能正式创建连接,释放连接时也需要才可以完整释放连接!因为要保证可靠性,所以效率慢,开销大()。

2022-09-22 19:13:56 1318 2

原创 CopyOnWriteArrayList源码分析

Copy-On-Write简称COW,是一种用于集合的并发访问的优化策略。对它的理解:它是一个线程安全的集合实现类,它的写入操作(比如add,get,remove方法)内部都有ReentrantLock,加锁后保证了线程安全。当我们往一个集合容器中写入元素时(添加、修改、删除),并不会直接在集合容器中写入,而是先将当前集合容器进行Copy,复制出一个新的容器,然后新的容器里写入元素,写入操作完成之后,再将原容器的引用指向新的容器。相当于线程安全的ArrayList,内部存储结构采用Object[]

2022-09-19 00:14:00 135

原创 创建对象在堆区如何分配内存

创建对象的内存分配

2022-09-18 23:53:34 154 2

原创 Session会话追踪的实现机制

一、概述在Web应用程序中,我们经常要跟踪用户身份。例如:当一个用户登录成功后,如果他继续访问其他页面,Web程序如何才能识别出该用户身份?当一个用户在操作自己的购物车时,Web程序如何才能识别出该用户身份?因为HTTP协议是一个无状态协议,即Web应用程序无法区分收到的两个HTTP请求是否是同一个浏览器发出的。为了跟踪用户状态,服务器可以向浏览器分配一个唯一ID,并以Cookie的形式发送到浏览器,浏览器在后续访问时总是附带此Cookie,这样,服务器就可以识别用户身份。二、Session和C

2022-08-25 00:44:06 146

原创 Servlet的生命周期

1.一个Web App由一个或多个Servlet组成,在提供一个URL路径发起对一个Servlet请求的过程中,本质是在调用执行Servlet实例的doXXX()方法。该Servlet实例创建和使用的过程,被称为Servlet的生命周期。2.Servlet生命周期包括:实例化,初始化,服务,销毁。

2022-08-21 13:29:58 359 5

原创 基于MyBatis框架所遇到的常见问题及其解决方法

一、MyBatis是什么?1.1、概述 Mybatis是一个优秀的开源、轻量级持久层框架,它对JDBC操作数据库的过程进行封装,简化了加载驱动、创建连接、创建 statement 等繁杂的过程,使开发者只需要关注sql本身。 我们原来使用JDBC操作数据库,需要手动的写代码去注册驱动、获取connection、获取statement等等,现在Mybaits帮助我们把这些事情做了,我们只需要关注我们的业务sql即可,这样可以提高我们的开发效率。 MyBatis属于半自动的ORM框

2022-08-16 21:25:53 1620

原创 当添加一个键值对元素时,HashMap发生了什么?

当新添加一个KV键值对元素时,通过该元素的key的hash值,计算该元素在数组中应该保存的下标位置。因为数组长度为2的n次幂时,可以使用&与位运算,结合hash值,快速计算该元素在数组中的下标位置,提高HashMap的使用效率。例如:加载因子(LoadFactor)的默认值为0.75f,数组容量默认为16,当HashMap中元素个数超过16 × 0.75=12的时候,数组就会扩容。●如果在该下标位置已经存在元素,代表产生哈希冲突,则采用链地址法处理,以单向链表的形式,将新元素存储在链表的尾部(尾插法)。..

2022-08-13 19:39:42 103 2

原创 基于FTP协议文件的上传与下载

用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。比如说,用户发出一条命令,要求服务器向用户传送某一个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。启动ftp客户程序工作的另一途径是使用ie 浏览器,用户只需要在ie地址栏中输入如下格式的url地址:ftp: //[用户名:口令@]ftp服务器 域名:[ 端口号]⑥下载文件(获取FTP服务器指定目录的文件)...

2022-08-06 22:17:50 1347 4

原创 java中的加密与安全——常见哈希算法总结,对称式加密及不对称式加密

常见的编码有ASCII码、Unicode编码。字母A的编码是十六进制的0x41,字母B是0x42,以此类推;ASCII只能用于英文编码,最多只能有127个字符。要想对更多的文字进行编码,就需要用占用两个字节的Unicode.而中文的“中”字使用Unicode编码就是0x4e2d,使用UTF-8则需要3个字节编码。所以,最简单的编码是直接给每个字符指定一个若干字节表示的整数,复杂一点的编码就需要根据已有的编码推算出来。...............

2022-07-21 20:50:32 1730 1

原创 JSON解析

JSON}二、JSON语法1.使用大括号保存对象,每个对象由若干数据组成。2.每个数据由keyvalue速值对组成3.数据之间使用逗号,分隔4.使用\进行特殊字符的转义。

2022-07-18 20:02:50 17884

原创 Java Email

Email就是电子邮件,我们平常使用的QQ邮箱,网易邮箱,Foxmail都是用来收发邮件的,利用Java程序也可以完成收发电子邮件的功能。传统的邮件是通过邮局投递,从一个邮局到另一个邮局,最终到达用户的邮箱。我们把类似Outlook这样的邮件软件称为MUA意思是给用户服务的邮件代理;邮件服务器称为MTA意思是邮件中转的代理最终到达的邮件服务器称为MDA邮件到达的代理。常见的邮件协议有POP3是PostOfficeProtocol3的简称,...

2022-07-17 18:48:17 1931 1

原创 网络编程--TCP编程

TCP网络编程简介及使用TCP网络编程创建简易聊天室

2022-07-17 15:19:38 312

原创 java中关于超大Excel文件解析,XSSF,SXSSF,以及easyExcel的速度比较及其代码实现

java中关于超大Excel文件,XSSF,SXSSF,以及easyExcel的速度比较及其代码实现

2022-07-13 21:11:18 1584

原创 java中Excel文件解析及超大Excel文件解析

java中excel文件解析的各类方法及其代码实现

2022-07-13 20:44:47 2774 9

原创 List,Set,Map,Queue,Deque,Stack的特点及遍历方式总结

一.List:(1.添加的元素可重复。2.允许添加null值。3.有序。4.常用实现类有ArrayList,LinkedList。ArrayList把“添加”和“删除”操作封装起来,不用关心内部元素如何移动。LinededList是基于“双向链表”实现的集合。数据结构:双向链表。使用场景:插入,删除。)遍历方式:方法1:for eachfor(String s : list) { System.out.println(s); }方法2:for 循环for(int i = 0

2022-05-13 21:49:14 401 5

原创 栈模拟队列

首先清楚栈和队列各自的特点1.队列(queue):①集合 ②遵循先进先出(FIFO:first in first out ),后进后出的原则。 ③只能队头出队,队尾入队栈(stack):①类②是一种后进先出(LIFO:last in first out)的数据结构。③只能不断往栈(stack)里压入(push)元素,最后进去的最早弹出(pop)2.思路栈要实现队列的功能,就要实现元素先进先出的功能,而栈为后进先出,所以需要借助两个栈完成:"入队栈(in)"让最后进去的元素在栈顶先弹出之后

2022-05-13 18:38:35 307 1

原创 构造方法,静态方法,抽象方法,接口中的默认方法

一. 构造方法:1.创建实例的时候,其实是通过构造方法来创建的。2.构造方法的格式是:public + 类名(参数){方法体}3.和普通方法相比,构造方法没有返回值,也没有void,在调用构造方法时,需要使用new关键字4.创建实例的格式为:类名 + 引用(对象) = new 类名(参数/无参);5.在没有定义参数时,构造方法是默认有一个无参构造方法的public +类名 (){方法体}注意:(如果我们自定义了一个构造方法,那就没有编译器默认的无参构造方法了)!!!6.如果既要使

2022-02-20 19:36:06 1455 2

原创 java中的重载和重写

重载(Overload):在同一个类中,针对相同功能的一组方法的定义,方法的参数(类型,个数,顺序)均不同如图:都是sayHello方法,第一个方法的返回值为String类型的,第二个加上了int类型的count参数,多了一个输出的条件,第三个加上了int类型的age参数,加上了年龄的限制 三个都是sayHello的方法,却有着不同的参数,这就是重载。功能类似的方法使用同一名字更容易记住重写(Override):在继承关系中,子类如果定义了一个与父类方法签名完全相同的方法,被称为重写!简单来说.

2022-02-16 18:57:28 158

原创 java中”==”和“equals()方法的区别“

==:基本类型中,比较的是两个值是否相同比如:引用类型中,比较的则是该变量的内存地址是否相同比如:String类型属于引用数据类型,当它们用==进行比较时,比较的是内存地址,只有同一个new出来的对象 返回结果才为true ,否则比较后结果为false,因为每new一次都会重新开辟一个新的堆内存空间...

2022-02-16 18:36:55 58

空空如也

空空如也

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

TA关注的人

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