摘要:
间隙锁 临键锁 默认情况下,InnoDB在 REPEATABLE READ事务隔离级别运行,InnoDB使用 next-key 锁进行搜 索和索引扫描,以防止幻读。 索引上的等值查询(唯一索引),给不存在的记录加锁时, 优化为间隙锁 。 索引上的等值查询(非唯一普通索引),向右遍历时最后一个值不满足 阅读全文
摘要:
一、什么是反射: (1)Java反射机制的核心是在程序运行时动态加载类并获取类的详细信息,从而操作类或对象的属性和方法。本质是JVM得到class对象之后,再通过class对象进行反编译,从而获取对象的各种信息。 (2)Java属于先编译再运行的语言,程序中对象的类型在编译期就确定下来了,而当程序在 阅读全文
摘要:
动态代理 前言 代理模式是一种设计模式,能够使得在不修改源目标的前提下,额外扩展源目标的功能。即通过访问源目标的代理类,再由代理类去访问源目标。这样一来,要扩展功能,就无需修改源目标的代码了。只需要在代理类上增加就可以了。 其实代理模式的核心思想就是这么简单,在java中,代理又分静态代理和动态代理 阅读全文
摘要:
在处理多线程并发安全的方法中,最常用的方法,就是使用锁,通过锁来控制多个不同线程对临界区的访问。 但是,无论是什么样的锁,乐观锁或者悲观锁,都会在并发冲突的时候对性能产生一定的影响。 那有没有一种方法,可以彻底避免竞争呢? 答案是肯定的,这就是ThreadLocal。 从字面意思上看,ThreadL 阅读全文
摘要:
前言 在分析ThreadLocal导致的内存泄露前,需要普及了解一下内存泄露、强引用与弱引用以及GC回收机制,这样才能更好的分析为什么ThreadLocal会导致内存泄露呢?更重要的是知道该如何避免这样情况发生,增强系统的健壮性。 内存泄露 内存泄露为程序在申请内存后,无法释放已申请的内存空间,一次 阅读全文
摘要:
前言 在我们开发中经常会用到很多的常用的工具类,这里做一个总结。他们有很多的方法都是我们经常要用到的。所以我们一定要把它好好的掌握起来! Java String API 1.获取: int length():获取字符串的长度。 char charAt( int index )根据位置获取该位置上某个 阅读全文