- 博客(33)
- 资源 (2)
- 收藏
- 关注
原创 try-catch && throw && throws的正确使用方法
本文通过三个代码,简单介绍了java中try-catch,throw,throws的使用
2025-03-14 10:43:23
114
原创 从tryLock()源码来出发,解析Redisson的重试机制和看门狗机制
本文从tryLock的源码出发,解析了Redisson的重试机制和看门狗机制
2024-12-22 10:34:10
574
原创 JDKProxy && CGLibProxy实现原理(附代码模拟实现)
本文通过代码模拟实现了JDKProxy 和 CGLibProxy的底层实现原理
2024-12-15 18:07:48
172
原创 Spring中xxAware接口和InitializingBean接口的作用
本文介绍了Spring中Aware和InitializingBean接口的作用以及@Autowired失效的场景
2024-12-13 11:31:01
501
1
原创 数组与集合的区别(概况)
数组与集合的区别1、 数组是静态的,一个数组实例具有固定的大小,一旦创建了就无法改变容量了。而集合是可以动态的,可以根据需求扩容2、 数组既可以存储基本数据类型,也可以存储引用类型。集合只能存储引用类型,数组存储应用类型感觉很少用;集合只能存储引用类型,所以想要存储基本类型时,要将基本类型转换为对应的包装类3、 数组只能存储同一类型、集合可以存储不同的引用类型(通常情况下也是存储的同一类型),集合可以存储不同类型的原因是,通过源码,我们可以得知,其方法的返回类型定义的都是Object超类,也就是说在使
2022-05-12 22:57:23
1000
1
原创 抽象类与接口的区别
抽象类和接口的区别1、 抽象类中有构造方法,接口中无构造方法。2、 课外思考:接口不能实例化是因为它没有构造方法?你认为这种描述正确吗?是不正确的,接口不能实例化的原因是因为,为接口实例化没有任何意义,所以自然不需要构造方法。可参考此篇文章(https://wenku.baidu.com/view/52bd323e13a6f524ccbff121dd36a32d7375c72c.html)3、 一个类可以实现多个接口、但只能继承一个抽象类形象的解释:抽象类表示的是它是什么,而接口表示的是它能做什么
2022-05-11 23:21:51
2293
原创 Eclipse:java was started but returned exit code=13
java was started but returned exit code=13图是贴的别人的,自己的忘记截屏了本来自己是不用eclipse的,一直是用idea(IDEA是真的要比eclipse好用),但因为mooctest,不得不下载了eclipse,然后就报错了,又浪费那么长时间来解决我下载的是最新版本的eclipse,自己也看到了require 11及以上,(自己用的一直是8),但以为它会向下兼容,就没想那么多(现在想想,我真是个傻叉)报错之后,就各种搜,而且竟然发现自己配置的jdk竟然
2021-09-28 23:39:36
128
1
原创 The last packet successfully received from the server was 3 milliseconds ago. The last packet sent
The last packet successfully received from the server was 3 milliseconds ago. The last packet sent successfully to the server was 2 milliseconds agocaused bymysql连接池报 javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException(javax.net
2021-09-16 19:44:31
3728
原创 负数在计算机中到底是如何表示的
问题引入mov ax,-128 ;eax=????ff80hshl eax,16 ;eax=ff800000hsar eax,16 ;eax=ffff8000h明明是将-128移入的ax中,为什么ax中存的是ff80h呢?ff80h转换为十进制=65408 和-128有半毛钱关系?当时确实把我给蒙住了很好,多看了你一眼,又发现了知识漏洞首先,我们要知道,负数在计算机中是怎么表示的,详情点此链接 ,这篇文章要搞清.
2021-06-09 16:28:02
571
原创 Mybatis配置出现的一些问题,如http://mybatis.org/dtd/mybatis-3-config.dtd 报红等 以及无关问题为什么创建不了Java类
记录问题解决打开了之前学习Mybatis的idea文件,出现了许多的问题,记录一下解决过程第一眼最明显的报红就是出现在Mybatis的XML配置中<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> //这一行报
2021-06-08 00:21:06
5836
1
原创 16位的整数,为什么可以通过其高字节和低字节进行异或运算来检查其奇偶性?
对16位整数来说,可以通过将其高字节和低字节进行异或运算来检测奇偶性,原理是什么?mov ax,64C1h ;0110010011000001xor ah,al ;ah代表高8位,al代表低八位;最终结果:10100101 四个1,偶检验 与原数六个1,偶校验一致检测奇偶性,就是看有多少位’1’异或操作,三种情况,0与0=0,1与0=1,1与1=0也就是是说高字节与低字节异或,只有出现相同位一个是1,一个是0的情况才会得到10与0,不用说,得不到1,而且这
2021-06-07 16:02:32
641
原创 从反汇编的角度来看,C++中函数的参数值到底占用了内存的几个字节
在32位模式下有一个 void fun(char) 函数当你调用它,并且传入一个参数’A’ 即 void fun(‘A’)会为A分配几个字节?考察知识点:运行时堆栈:是一个内存数组,由ESP寄存器直接对其进行管理,ESP寄存器存放的是堆栈中某个位置的32位偏移量当调用过程时,输入的数值称为参数,通过将其压入堆栈实现参数的传递也就是说,'A’是被压入了运行时堆栈来实现了传递PUSH指令减少ESP的值的大小取决于操作数的大小,操作数是16位,ESP减2;操作数是32位,ESP减4下图是
2021-06-06 14:35:10
297
转载 INC和DEC为什么不影响状态标志位
因为指令系统设计人员考虑该指令主要用于对指针(即地址)进行增加,不存在进位问题,所以没有设计让INC影响进位标志CF。INC,DEC指令不影响CF标志位,这个是Intel规定的!其原因是硬件设计造成的,总之,对软件人员来制说不重要!INC,DEC指令不影响CF标志bai位,这表明执行INC/DEC指令之后,CF不能反映进位情况INC 00000000111111110000000011111111+1当然要进位,但不设置CF为1。我们的问题就在于,将进位与CF等同CF被称为进..
2021-06-05 14:48:10
4966
原创 32学时的汇编语言(基于x86)学了些什么?(一)
第二章:x86处理器架构32位x86处理器的操作模式保护模式:是处理器的原生态模式,所有的指令和特性都是可用的,每个程序被分配的独立内存区域叫段,处理器会阻止程序访问除了自己段范围之外的内存,也就是其运用了虚拟内存的技术实地址模式:是早期的Intel处理器的编程环境,可以切换到其他模式,当程序想直接访问系统内存和硬件设备时,这个模式很有用虚拟8086:运行在保护模式下的实地址模式系统管理模式:向操作系统提供实现诸如电源管理和系统安全等功能的机制,通常由计算机制造商实现在32位机下,保护模式的最
2021-06-05 12:51:15
283
2
原创 指令和伪指令的区别及作用
指令:是一种语句,它在程序汇编翻译时变得可执行,汇编器将其翻译成机器语言字节,并且在运行时由CPU加载和执行每一条指令语句表示CPU具有的一个基本能力,比如数据传送,两数相加或相减,移位等,而这种能力是在目标程序运行时完成的,是依赖于CPU、存储器、IO等接口设备来实现的。伪指令:顾名思义,它不是真正的指令,也就是不是最终的指令,是用于指示汇编程序如何汇编源程序,所以这种语句又叫命令语句,例如伪指令告诉汇编程序,该源程序如何分段,有哪些逻辑段在程序段中,哪些是当前段等等,伪指令语句的这些命令功能是..
2021-06-01 17:21:58
6411
2
原创 Maven基础学习整理
Maven学习目前掌握的javaweb开发技术目前的技术存在的问题–>Maven的产生一个项目就是一个工程如果项目非常庞大,就不适合继续使用package来划分模块。最好是每一个模块对应一个项目,利于分工协作。借助于maven就可以将一个项目拆分成多个工程。jar包需要别人替我们准备好,或到官网下载所有知名框架或第三方工具jar包已经按照统一规范放在了Maven的中央仓库中。项目中需要的jar包必须手动“复制”、”粘贴” 到WEB-INF/lib 项目下带来的问题:同样
2021-05-31 23:53:17
151
原创 Linux入门学习知识整理总结
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2021-05-29 22:06:25
293
2
原创 操作系统中的硬链接和符号链接的不同
硬链接和符号链接 这里没有介绍它们的功能和优点缺点(太多博客已经写过了),主要是解释了它们的原理出现硬链接和符号链接的原因:我们需要共享文件,如果一个共享文件同时出现在属于不同用户的不同目录下,工作起来就会很方便,但是,怎么解决不同用户下对文件的修改能够让其他用户看到?解决方法就是硬链接和符号链接链接的定义:假设,一个文件本属于C目录下,但是B目录与该文件建立起了联系,这个联系就被称为链接因此文件系统本身是一个有向无环图,而不是一棵树,虽然这导致维护的复杂,但是是必要的认识一下...
2021-05-26 20:47:23
533
12
原创 GNU、FSF与自由软件
GNU简述 1984年斯托曼发起了GNU(GNU's Not Unix,这是官方的递归定义,永远找不到本义,是开源软件的幽默)计划,目的:建立一个自由、开放的UNIX操作系统 后来这个计划不仅局限于操作系统(他应该是没有等到自由、开放的UNIX操作系统,却等到了Linux的诞生),更是通过GPL来建立起更多的自由软件、号召更多的人投身到自由软件的开发 GNU发家的几个“利器” 斯托曼先是通过开发可以在UNIX上运行的软件来打开GNU的知名度,并通过Emacs(一种程序编辑器,可以在用户编...
2021-05-25 00:28:38
652
6
原创 简述UNIX和Linux的发展
UNIX的历史萌芽:Thompson(肯.汤普逊)用汇编语言写出来一组内核程序,同时包含了一些内核工具程序,以及一个小的文件系统,这个系统就是UNIX的原型,当时称为Unics 这个文件系统有两个重要的概念,后来对Linux的发展有相当重要的影响: 1)、所有的程序或系统设备都是文件 2)、不管程序本身还是附属文件,所写的程序只有一个目的,且要有效的完成目标 2.正式诞生:Ritchie等人用C语言写出了第一个正式Unix的内核 高...
2021-05-24 23:38:45
559
4
原创 MySQL中WAL机制的一些个人理解,个人觉得比较通俗易懂
WAL机制:Write ahead logging,称为预写式机制它的关键点就是先写日志,再写磁盘这里的logging指的是redo log我们观察一个更新操作,通过如果有WAL机制,MySQL是怎么处理的,能达到什么样的效果;如果没有WAL机制,那么MySQL又会怎么处理来理解先看如果没有WAL机制,也就是说没有redo log,那么这时我们每做一次更新操作,就必须要将更新的数据写入磁盘,注意这个过程是随机写磁盘(它是比较耗时间的)存在WAL机制时,MySQL的操作:先将更新的记录写入
2021-05-23 17:57:00
832
2
原创 计算机网络(自顶向下)传输层知识整理
传输层为运行在不同主机上的应用进程提供逻辑通信服务起着重要的作用两个实体怎么样在一种会丢失或损失数据的媒体上建立可靠的通信 控制运输层实体的传输速率以避免网络中的拥塞,或从拥塞中恢复过来运输层和网络层的关系 运输层为位于不同主机上的进程之间提供逻辑通信;网络层为不同主机之间提供逻辑通信 运输层是运行在端系统;网络层运行在中间路由器 家庭间邮件运输类比运输层和网络层 运输层协议提供的服务受限制于底层网络层协议的服务模型多路复用和多路分解 多路复用 ...
2021-05-22 23:08:14
173
原创 计算机网络(自顶向下),应用层知识整理
网络应用程序体系结构 客户-服务器体系结构 P2P(对等)体系结构 自扩展性 最稀缺悠闲技术 交换的激励机制“一报还一报”进程与计算机网络之间的接口:套接字 多数应用程序是由通信进程对组成,进程通过套接字来进行报文的收发,IP地址+端口号Web和HTTP 使用TCP作为支撑它的运输层协议 无状态协议 Cookie来解决无状态的缺点 支持持续连接(默认)和非持续连接 非持续...
2021-05-20 17:41:41
88
6
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人