Java[112]
Java开发工具面试题
本文转载自动力节点 ,如有侵权及时联系。 001 什么是Maven? Maven是一个项目管理工具,它包含了一个项目对象模型(POM:Project Object Model),一组标准集合,一个项目生命周期(Project LifeCycle),一个依赖管理系统(Dependency manage
布隆过滤器
布隆过滤器相信大家没用过的话,也已经听过了。 布隆过滤器主要是为了解决海量数据的存在性问题。对于海量数据中判定某个数据是否存在且容忍轻微误差这一场景(比如缓存穿透、海量数据去重)来说,非常适合。 文章内容概览: 什么是布隆过滤器? 布隆过滤器的原理介绍。 布隆过滤器使用场景。 通过 Java 编程手
Java魔法类Unsafe详解
本文转载来自JavaGuide ,如有侵权及时联系。 阅读过 JUC 源码的同学,一定会发现很多并发工具类都调用了一个叫做 Unsafe 的类。 那这个类主要是用来干什么的呢?有什么使用场景呢?这篇文章就带你搞清楚! Unsafe 介绍 Unsafe 是位于 sun.misc 包下的一个类,主要提供
BigDecimal 详解
本文转载来自JavaGuide ,如有侵权及时联系。 《阿里巴巴 Java 开发手册》中提到:“为了避免精度丢失,可以使用 BigDecimal 来进行浮点数的运算”。 浮点数的运算竟然还会有精度丢失的风险吗?确实会! 示例代码: float a = 2.0f - 1.9f; float b = 1
JavaSPI机制详解
本文来自JavaGuide ,如有侵权及时联系。 在面向对象的设计原则中,一般推荐模块之间基于接口编程,通常情况下调用方模块是不会感知到被调用方模块的内部具体实现。一旦代码里面涉及具体实现类,就违反了开闭原则。如果需要替换一种实现,就需要修改代码。 为了实现在模块装配的时候不用在程序里面动态指明,这
JDK监控和故障处理工具
本文来自JavaGuide ,如有侵权及时联系。 JDK 命令行工具 这些命令在 JDK 安装目录下的 bin 目录下: jps (JVM Process Status): 类似 UNIX 的 ps 命令。用于查看所有 Java 进程的启动类、传入参数和 Java 虚拟机参数等信息; jstat(J
ConcurrentHashMap核心源码+底层数据结构分析
本文来自公众号:末读代码的投稿,原文地址:https://mp.weixin.qq.com/s/AHWzboztt53ZfFZmsSnMSw 。 本文转载来自JavaGuide ,如有侵权及时联系。 上一篇文章介绍了 HashMap 源码,反响不错,也有很多同学发表了自己的观点,这次又来了,这次是
ArrayList 核心源码+扩容机制分析
本文转载来自JavaGuide ,如有侵权及时联系。 ArrayList 简介 ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增长。在添加大量元素前,应用程序可以使用ensureCapacity操作来增加 ArrayList 实例的容量。这可以减少递
ConfigurationClassPostProcessor源码解析
ConfigurationClassPostProcessor 0.预备 1.在spring源码中讲到, 在refresh()方法中的第5个小方法invokeBeanFactoryPostProcessors(beanFactory)中会先后调用BeanFactoryPostProcessor接口的
Spring-transaction源码
Transaction源码 1.准备 pom文件 <dependencies>
<!-- context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>sprin
Spring-ioc源码解析
AnnotationConfigApplicationContext 启动类 public class ConfigStart {
public static void main(String[] args) {
ApplicationContext applicationC
@Autowired和@Resource解析
@Autowired和@Resource 解析 准备 1.通过前面部分的spring源码解析, 我们知道BeanPostProcessor, 会在普通bean实例化之前实例化并初始化完成!并在bean的整个实例化和初始化过程前后执行其加强的方法;
2.@Autowired和@Resource都是通过