加载中
正则表达式

在一个句子中匹配一个单词 public class PatternTest { private static Pattern pattern = Pattern.compile("Ben"); public static void main(String[] args) { Matcher matcher = patter......

今天 07:54
153
Java字节码跟真正汇编的比较

我们来看一下这样一段逻辑(Java实现) public void print(int i,int j) { int f; if (i == j) { f = i + j; }else { f = i - j; } } 编译后的字节码 public void pri......

昨天 04:45
98
Java字节码

Java字节码对于虚拟机,就好像汇编语言对于计算机,属于基本执行指令。每一个Java字节码指令是一个byte数字,并且有一个对应的助记符。 Java虚拟机常用指令 常量入栈指令 常量入栈指令的功能...

05/26 05:18
483
类加载器的双亲委托模式

遵照之前解析反射 中,我们说到类的加载器ClassLoader在对类进行加载的时候,默认会使用双亲委托模式。系统会判断当前类是否已经被加载,如果已经被加载,就会直接返回可用的类,否则就会尝试...

05/21 05:03
555
Spring扩展的集合LinkedMultiValueMap和ConcurrentReferenceHashMap解析

MultiValueMap是一个接口,它的一个键可以对应多个值(列表) public interface MultiValueMap<K, V> extends Map<K, List<V>> { /** * 获取key的第一个值 */ @Nullable V getFirst(K k......

LinkedHashMap源码分析

我们都知道HashMap是无序的Map,TreeMap是有序的Map。而LinkedHashMap继承于HashMap,也是一个有序的Map,这似乎违背了Hash的理论。(注:TreeMap和LinkedHashMap的有序性是不一样的,TreeMap...

05/19 00:18
261
Oracle迁移MySQL 8特殊SQL处理

递归查询 在Oracle中建立一个表 create table nayi_180328_connect_test( dept_id varchar2(50), parent_id varchar2(50), dept_name varchar2(100), dept_rank varchar2(2000), val number...

05/07 15:14
576
分布式事务

JTA/XA二段式提交 普通事务管理的过程 do commit/rollback 外部(全局)事务-JTA 外部事务管理器提供事务管理 通过Spring事务接口,调用外部管理器。 使用JNDI等方式获取外部事务管理器的实例 ...

MySQL性能优化(二)

B-Tree索引和Hash索引 如果数据比较少时,或者查询的频率比较低的时候,索引的作用并不明显。因为这时候表中的数据差不多都可以完全缓存在内存中。所以就算是进行全表扫描也不会太慢。 随着表...

ShardingSphere多数据源,读写分离等的实现

鉴于shardingsphere已经升级,我们现在使用的是RC2的版本 <dependency> <groupId>org.apache.shardingsphere</groupId> <artifactId>sharding-jdbc-spring-boot-starter</artifactId> <vers...

MySQL性能优化(一)

大表 记录行数巨大,单表超过千万行 。但如果是记录日志的表,只有insert和select操作,没有update的,一般超过千万行,对业务也没有影响。 表数据文件巨大,表数据文件超过10G 大表对查询的...

03/25 18:15
632
动态规划、回溯、贪心,分治

动态规划篇 从斐波那契数列开始 我们先给出斐波那契数列的常用算法类 public class Fibonacci { private static int num = 0; private Fibonacci() { } public static int fib(int n) { ......

03/16 23:43
883
算法可视化

Java GUI可视化 运动的小球 小球实体类 @AllArgsConstructor public class Circle { @Getter @Setter private int x; //圆心横坐标 @Getter @Setter private int y; //圆心纵......

LeetCode算法题

第1题https://leetcode-cn.com/problems/two-sum/ 两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每...

03/05 12:39
1.4K
图论整理

图的基本概念 根据之前博客数据结构整理 中,我们可以知道 是一种线性数据结构 是一种树结构 而这样一种结构就是一种图的结构 图的每一个点称为顶点(Vertex),通常我们会给顶点标上序号,而这...

02/27 15:19
4.1K
数据结构整理

数组封装 接口 public interface Array<T> { T[] getData(); int getSize(); int getCapacity(); boolean isEmpty(); void addLast(T t); void addFirst(T t); void add(i......

01/22 20:41
6.1K
Spring Security详解

要使用Spring Security,首先当然是得要加上依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> 这个时...

微服务认证授权概览

从单体架构向微服务架构转型的过程中,认证方式也发生了改变。 而转变最大的方面便是有状态向无状态的转变。 在单体架构时代,我们一般使用的是会话管理(Session),架构图如下所示 即多实例采...

Reactor深度探索

技术点 反应器模式(Reactor) 同步非阻塞,每个事情可以分为几个步骤,每个步骤可以相应去做,每个步骤是不会相互影响的,但是做起来是串行的。有关Netty的具体实现,可以参考Netty整理 Proa...

响应式编程解析

响应式编程最重要的是解决生产者和消费者之间的关系。如果生产者产生的数据过大,而消费者消费不过来,就会压垮消费者。所以就需要有一个重要的概念——流控。 解决流控有几种方式 节流 若消...

没有更多内容

加载失败,请刷新页面

返回顶部
顶部