- 博客(8)
- 收藏
- 关注
原创 Java——StringUtils的常用方法
StringUtils是JDK提供的String类型操作方法的补充,比String操作字符串更加安全
2022-08-13 19:04:21
2501
原创 域名系统的工作流程——DNS服务详解
简单说是:DNS把难记的IP地址转换为好记的域名帮助记忆。 DNS(Domain Name System 域名系统):是一项互联网服务,存储域名和IP地址相互映射关系的一个分布式数据库,通过为每台主机建立IP地址与域名之间的映射关系,用户可以避开难记的IP地址,而使用域名来唯一标识网络中的计算机。域名由点、字母和数字组成点分割不同的域域名包括根域名、顶级域、二级域、三级域(主机) 第一步、先在本地缓存中查询是否有对应的IP地址:如果有则直接读取结果;如果没有,则进行第二步第二步、向本地DNS服务器发送查
2022-06-05 21:48:57
2970
原创 代理模式之静态代理
一、什么是代理模式?代理模式:为其他对象提供一种代理,以控制对这个对象的访问。代理类的对象本身并不真正实现服务,我们在访问实际对象时,是通过代理对象来访问的。二、代理模式的分类 静态代理:代理和被代理之前都是确定的。都实现相同的接口或继承相同的抽象类 JDK动态代理:代理对象不需要实现接口,代理类并不是在Java代码中定义的,而是在运行时根据我们在Java代码中的“指示”动态生成的(是利用JDK的API生成的)。 CGLib代理 三、代理模式的使用🧩静态代理
2022-05-31 20:18:10
300
原创 乐观锁、悲观锁
什么是锁🔒? 从传统的铁锁到现代的密码锁、指纹锁等,锁的便捷性和安全性在不断提升,对于私有财产或领地的保护也更加高效和健全。在计算机信息世界里,单机单线程时代没有锁的概念。自从出现了资源竞争,人们才意识到需要对部分场景的执行现场加锁,昭告天下,表明自己的“短暂”拥有(其实对于任何有形或无形的东西,拥有都不可能是永恒的)。计算机的锁也是从开始的悲观锁,发展到后来的乐观锁、偏向锁、分段锁等。 锁主要提供了两种特性:互斥性和不可见性。因为锁的存在,某些操作对外界来说是黑箱操作,只有锁的持有者才知道对变..
2022-05-29 23:03:33
240
原创 数据库引擎基本介绍
一、什么是引擎?简单来说:接收上层传下来的指令,然后对表中的数据进行提取或写入操作。 数据库引擎就是一个“数据库发动机”。当你访问数据库时,不管是手工访问还是程序访问,都不是直接读写数据库文件,而是通过数据库引擎去访问数据库文件。 以关系型数据库为例,发SQL语句给数据库引擎,数据库引擎会解释SQL语句,提取出你需要的数据返回给你。因此,对访问者来说,数据库引擎就是SQL语句的解释器。正式来说 数据库引擎是用来存储、处理和保护数据的核心服务。利用数据库引擎可以控...
2022-05-29 22:57:09
1310
原创 Map实现线程安全的3种方式
方式一、使用HashTable Map<String, String> hashtable = new Hashtable<>();实现原理是在增删改查的方法上使用了synchronized锁机制,在多线程环境下,无论是读数据还是修改数据,在同一时刻只能有一个线程在执行synchronized方法(所有线程竞争同一把锁),因为对整个表进行锁定。所以线程越多,对该map的竞争越激烈,效率越低。方式二、使用Collections.synchroniz...
2022-05-29 22:52:26
12592
原创 创建线程的三种方式
线程(Thread)和进程(Process)的关系程序:指代码,是一个静态的概念。线程:指方法,如:main( ), 一个进程中至少有一个线程,也可包含若干个线程。进程:程序运行的一次过程,是一个动态的概念。注:很多多线程是模拟出来的,真正的多线程是指有多个cpu,即多核,如服务器。如果是模拟出来的多线程,即在一个cpu的情况下,在同一个时间点,cpu只能执行一个代码。因为切换的很快,所以就有同时执行的错觉。如:边吃饭边看手机,在某一个时间点,只吃饭或只看手机。一、什么是线程?
2022-05-11 22:47:45
183
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人