• #处理数据加载和空状态渲染 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455import { useState, useEffect } from 'react';const DataComponen...
  • B+树索引和Hash索引

    B+树索引B+树的一些优点和特性 B+树是一棵平衡树,每个叶子节点到根节点的路径长度相同,查找效率较高; B+树的所有==关键字都在叶子节点==上,因此范围查询时只需要遍历一遍叶子节点即可; B+树的叶子节点都按照关键字大小==顺序存放==,因此可以快速地支持按照关键字大小进行排序; B+树的非叶子...
  • Shadcn 表单示例

    123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051<div className="add-circle-content"> <Form {...form} > <for...
  • React 中实现全局 Loader

    使用 Redux + 自定义 Hook准备 Loader Loader.tsx 12345678910import React from 'react'; import styled from 'styled-components'; const Loader = () => { return ( <StyledW...
  • Java的集合类

    Java 的整个集合框架中。主要分为 List、Set、Queue、Stack、Map ,前四种都是 单一元素的集合,而最后的 Map 是以 KV 对形式使用从继承关系上来讲,List、Set ,Queue 都是 Collection 的子接口,Collection 又继承了 Iterable 接口,说明这几种接口都是可以遍历的。
  • Spring事务失效可能是哪些原因

    Spring中比较容易失效的就是通过@Transactional 定义的声明式事务,他在以下几个场景中会导致事务失效,首先,就是Spring的@Transactional是基于Spring的AOP机制实现的,而AOP机制又是基于==动态代理==实现的。那么如果代理失效了,事务也就会失效。 @Transactional 应用在非 public 修饰的方...
  • Spring的事务传播机制有哪些?

    #Spring的事务传播机制 用于控制在多个事务方法相互调用时事务的行为在复杂的业务场景中,多个事务方法之间的调用可能会导致事务的不一致,如数据丢失、重复提交等,使用事务传播机制可以避免这些问题,保证事务的一致性和完整性 Spring 的事务规定了 7 种事务的传播级别,默认的传播机制是 REQUIRED REQUIRED,如果不存在事务则开启一个事务,如果存在事务则加入之前的事务,总是只...
  • Spring的AOP

    简述: AOP (Aspect-Oriented Programming)—— 即 面向切面编程 —— 把公共的逻辑抽出来,让开发者可以更专注于业务逻辑开发和 IOC 一样,AOP 也指的是一种思想,是对 OOP 的一种补充。OOP 是面向类和对象的,但是 AOP 是面向不同切面的。一个切面可以横跨多个类和对象去操作,极大的丰富了开发者的使用方式,提高了开发效率。例如,有以下场景 :一个订...
  • YoungGC和FullGC的触发条件是什么?

    先说结论: ==YoungGC 的出发条件比较简单 —— 年轻代中的 Eden 区分配满后就会触发==FullGC 的出发条件比较复杂,有以下几种 老年代空间不足 创建一个大对象,超过指定阈值会直接保存在老年代中,如果老年代空间也不足,会触发 FullGC YoungGC 之后,发现要移到老年代的对象,老年代存不下的时候,会触发一次 FullGC ...
  • Java的堆是如何分代的?为什么分代

    Java的堆内存分代是指将不同生命周期的堆内存对象存储在不同的堆内存区域中,==这里的不同的堆内存区域被定义为“代”==。这样做有助于提升垃圾回收的效率,因为这样的话就可以为不同的”代”设置不同的回收策略。 一般来说, Java 中的大部分对象都是朝生夕死的,同时也有一部分对象会持久存在。如果把这两部分对象放在一起分析和回收,效率太低。因此 通过将不同...
12310