自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java并发容器ConcurrentMap

ConcurrentMap接口是线程安全的Map接口,ConcurrentHashMap是HashMap的线程安全版本。

2024-04-01 13:01:41 733

原创 谈谈MVCC机制

在MySQL中,MVCC(多版本并发控制)是InnoDB存储引擎使用的并发控制机制。它提供对数据的并发访问,并确保多用户环境中数据的一致性和隔离性。

2024-03-31 12:25:03 944

原创 简单理解session和cookie

在Web开发中,Session和Cookie是两种常用的客户端状态跟踪机制。它们在维护用户会话、个性化设置、安全认证等方面发挥着重要作用。下面来简单了解一下session和cookie。

2024-03-30 13:06:06 427

原创 SpringBoot自动装配

自动装配 是指 Spring Boot框架能够自动将一些常用的组件(例如数据库连接池、事务管理器等)注册到 Spring 容器中,而无需进行显式配置。这样相当于简化操作,提升了我们的工作效率。核心特性:依赖管理、自动配置、条件装配。

2024-03-30 12:04:54 625

原创 Java中的阻塞队列

阻塞队列是一种特殊的队列,它支持两个基本操作:入队(put)和出队(take)。当一个元素被放入阻塞队列时,如果队列已满,进行入队操作的线程将被阻塞,直到队列有空闲位置;同样地,当一个元素被取出时,如果队列已空,进行出队操作的线程也会被阻塞,直到队列中有元素可用。阻塞队列在多线程环境下非常有用,特别是在生产者-消费者问题中。生产者负责生成数据并将其放入队列,而消费者从队列中取出数据进行处理。阻塞队列确保了生产者不会在队列满时丢失数据,同时也保证了消费者不会在队列空时无限等待。

2024-03-29 14:15:27 700

原创 #{}和${}的区别

${}对应的就是字符串直接拼接参数,从而会有SQL注入的风险。#{}对应的就是占位符?和setString()拼接参数,不会有SQL注入的风险。

2024-03-29 13:38:13 490

原创 TCP的可靠性是怎么保证的?

TCP通过三次握手和四次挥手之后进行数据传输,它们是建立在序列号机制和确认应答机制的基础之上,如果保证这个机制的可靠性还需要一些其他辅助,TCP的可靠性保证包括:重传机制,滑动窗口,流量控制,拥塞控制等。

2024-03-28 16:16:45 769

原创 @Transactional 注解使用的注意事项

事务管理在系统开发中是不可缺少的一部分,Spring提供了很好的事务管理机制,主要分为编程式事务和声明式事务两种。

2024-03-28 15:25:19 825

原创 多线程中线程间如何通信

除了使用synchronized来对代码块和方法进行同步外,jdk1.5之后还有一种Lock同步锁的方式进行同步:使用lock.lock()来进行加锁,使用lock.unlock()方法来释放锁,既然可以使用lock来代替synchronized,那么如何进行处理synchronized与wait()、notify()、notifyAll()的线程通信机制呢,在使用lock时使用Condition来进行线程通信。下面来使用两种方式来分别展示一下线程间通信。

2024-03-26 20:41:57 472

原创 Redis是单线程还是多线程

Reids是单线程还是多线程

2024-03-26 20:26:47 584

原创 Docker常用命令

Docker常用命令

2024-03-25 13:07:44 206

原创 编程中的内存泄漏问题

编程中内存泄漏问题

2024-03-25 12:57:55 390

原创 wait、sleep、join、yield的区别

在线程的生命周期中,不同状态之间切换时,可以通过调用sleep()、wait()、join()、yield()等方法进行线程状态控制

2024-03-23 15:05:53 1332

原创 谈谈synchronized关键字

synchronized关键字使用和底层原理

2024-03-23 13:47:41 589

原创 JVM垃圾回收

JVM中存活算法和垃圾回收以及性能调优

2024-03-22 13:45:56 1248

原创 JVM类加载过程

JVM类加载机制、双亲委派、tomcat类加载

2024-03-22 13:03:17 909

原创 JVM内存划分

JVM内存划分

2024-03-21 19:18:44 1041

原创 什么是内网穿透?

内网穿透技术的出现,为我们带来了一个更加互联的世界。它不仅消除了地理和网络限制,还为远程工作、文件共享、远程访问等应用场景提供了强大支持。然而,在使用内网穿透技术时,我们也需要注意安全性,采取必要的措施来保护数据和系统的完整性。无论如何,内网穿透无疑是连接未来的关键一步。

2024-03-21 18:12:48 342

原创 Java中反射的底层实现原理

Java中反射的底层实现原理

2024-03-20 16:15:55 1037

原创 谈谈Java中的StringBuilder与StringBuffer

详解Java中的StringBuilder与StringBuffer

2024-03-20 15:28:16 1095

原创 Java中线程池及使用场景

线程池和使用场景

2024-03-19 14:08:07 470

原创 MySQL中行锁、表锁、悲观锁、乐观锁和共享锁

在操作数据库的时候,可能会由于并发问题而引起的数据的不一致性(数据冲突),如何保证数据并发访问的一致性、有效性,是所有数据库必须解决的一个问题,锁的冲突也是影响数据库并发访问性能的一个重要因素,因此锁对于数据库而言就显得尤为重要。

2024-03-19 13:09:23 1174 1

原创 Java中JDK 动态代理与 CGLIB 动态代理

JDK 动态代理和 CGLIB 动态代理各有其优劣,选择合适的代理方式取决于具体的需求场景。可以根据需要灵活地选择使用 JDK 动态代理或 CGLIB 动态代理,从而实现对目标类的代理控制和增强。无论是 JDK 动态代理还是 CGLIB 动态代理,都为 Java 中的 AOP 编程提供了重要的技术支持,能够帮助开发人员实现面向切面编程,提高代码的复用性和可维护性。

2024-03-18 11:13:29 441

原创 Redis常见问题

Redis中常见问题

2024-03-18 09:13:48 928

原创 Redis和Mysql的数据一致性问题

在高并发应用场景下,如果是对数据一致性要求高的情况下,要定位好导致数据和缓存不一致的原因。解决高并发场景下数据一致性的方案有两种,分别是延时双删策略和异步更新缓存两种方案。

2024-03-16 15:58:22 915 1

原创 Spring 中 BeanFactory 和 FactoryBean

Spring 中 BeanFactory 和 FactoryBean的区别

2024-03-16 15:00:26 1013

原创 Hashtable、HashMap、TreeMap的区别

然而,向 TreeMap 添加 null 值是允许的,我们可以看到 Cherry 对应的值被成功添加为 null。在非多线程环境中,或者在读多写少的场景下(可以通过外部同步来解决线程安全问题),HashMap 是一个优选,因为它提供了更好的性能。它是同步的,这意味着它是线程安全的,但这也意味着它通常比非同步的实现(如 HashMap )慢。它是非同步的,这意味着它不是线程安全的,但其性能在单线程环境下通常比 Hashtable 好。在需要根据键进行排序的应用中,如时间线索引、自然排序的目录结构等。

2024-03-15 15:08:26 917

原创 Java反射的底层实现原理

反射的底层实现原理

2024-03-15 13:28:02 859

原创 MySQL主从复制的原理

MySQL主从复制原理

2024-03-14 15:05:09 1000

原创 Java中怎么理解面向对象

面向对象、封装、继承、多态

2024-03-14 13:30:59 960

原创 TCP的三次握手和四次挥手

三次握手和四次挥手

2024-03-13 14:18:00 1459

原创 MySQL事务隔离

数据库隔离级别,读未提交、读已提交、可重复读、可串行化

2024-03-13 13:30:08 385

原创 Redis中AOF数据持久化

AOF数据持久化

2024-03-12 13:06:32 1017

原创 零拷贝详解

零拷贝详解

2024-03-12 11:52:38 799

原创 Java中乐观锁和悲观锁

Java中的乐观锁和悲观锁

2024-03-11 15:58:30 1066

原创 浅谈SpringAOP实现原理

spring AOP实现原理

2024-03-11 15:08:43 910

原创 Redis内存淘汰策略

redis内存淘汰机制

2024-03-11 12:46:15 1169

原创 spring循环依赖问题

spring中循环依赖问题及解决

2024-03-11 12:18:50 893

原创 ThreadLocal 内存泄漏问题

搞清ThreadLocal 内存泄漏问题,保持良好的编程习惯

2024-03-09 12:50:25 916

原创 不建议在高并发场景下使用synchronized?

为什么不建议在高并发场景下使用 synchronized?

2024-03-09 11:48:53 321

空空如也

空空如也

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

TA关注的人

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