摘要:
锁升级的过程指的是 synchronized 锁升级的过程,synchronized 锁升级机制也叫做锁膨胀机制,此机制诞生于 JDK 6 中。 在 Java 6 及之前的版本中,synchronized 的实现主要依赖于操作系统的 mutex 锁(重量级锁),而在 Java 6 及之后的版本中,J 阅读全文
posted @ 2024-03-18 18:51
初仰
阅读(39)
评论(0)
推荐(0)
摘要:
线程池的创建方法总共有 7 种,但总体来说可分为 2 类: 通过 ThreadPoolExecutor 创建的线程池;通过 Executors 创建的线程池。 线程池的创建方式总共包含以下 7 种(其中 6 种是通过 Executors 创建的,1 种是通过 ThreadPoolExecutor 创 阅读全文
posted @ 2024-03-18 18:49
初仰
阅读(2)
评论(0)
推荐(0)
摘要:
MySQL 索引根据不同的维度可以分为不同类型,比如以下这些: 根据数据结构分类可分为:B+ tree 索引、Hash 索引、Full-Text 索引;根据物理存储分类可分为:聚簇索引、二级索引(辅助索引、非聚簇索引);根据字段特性分类可分为:主键索引、普通索引、唯一索引、前缀索引;根据字段个数分类 阅读全文
posted @ 2024-03-18 18:46
初仰
阅读(40)
评论(0)
推荐(0)
摘要:
Redis 运行比较快的原因有以下几个: 内存存储:Redis 主要是将数据存储在内存中,而不是磁盘上。相比于传统的磁盘存储数据库系统,内存访问速度更快,因此可以实现更低的延迟和更高的吞吐量;单线程模型:Redis 采用单线程模型来处理客户端的请求。这意味着不会发生多线程之间的锁竞争和上下文切换,避 阅读全文
posted @ 2024-03-18 18:45
初仰
阅读(13)
评论(0)
推荐(0)
摘要:
@Autowired 和 @Resource 都是 Spring/Spring Boot 项目中,用来进行依赖注入的注解。它们都提供了将依赖对象注入到当前对象的功能,但二者却有以下不同: 来源不同:@Autowired 和 @Resource 来自不同的“父类”,其中 @Autowired 是 Sp 阅读全文
posted @ 2024-03-18 18:44
初仰
阅读(4)
评论(0)
推荐(0)
摘要:
一、Spring 事务的实现方式和实现原理Spring 事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,spring 是无法提供事务功能的。真正的数据库层的事务提交和回滚是通过binlog 或者 redo log 实现的。 二、Spring 的事务传播行为Spring 事务的传播行为说的 阅读全文
posted @ 2024-03-18 18:35
初仰
阅读(17)
评论(0)
推荐(0)
摘要:
@Transactional 应用在非 public 修饰的方法上,不支持回滚;@Transactional 注解属性 propagation 设置错误;@Transactional 注解属性 rollbackFor 设置错误;在同一个类中方法调用,导致 @Transactional 失效;异常被你 阅读全文
posted @ 2024-03-18 18:34
初仰
阅读(4)
评论(0)
推荐(0)
摘要:
readOnly该属性用于设置当前事务是否为只读事务,设置为true表示只读,false则表示可读写,默认值为false。例如:@Transactional(readOnly=true) rollbackFor该属性用于设置需要进行回滚的异常类数组,当方法中抛出指定异常数组中的异常时,则进行事务回滚 阅读全文
posted @ 2024-03-18 18:27
初仰
阅读(8)
评论(0)
推荐(0)
浙公网安备 33010602011771号