LeePandar
Oracle转Mysql Oracle转Mysql
1.将表中时间类型的字段更改类型,比如CREATE_TIME,UPDATE_TIMEALTER TABLE ZFTJ_HALF MODIFY CREATE_TIME TIMESTAMP WITH LOCAL TIME ZON
2020-11-17
解读聚合收款码背后的原理 解读聚合收款码背后的原理
前言微信/支付宝收款码大家应该不会陌生,线下小微商户收款大多使用这个,就比如下图。 这种收款方式很方便,微信、支付宝后台申请开通,然后还可以免费申请相关物料。 不过这种方式用户体验其实不是很好,之前有好几次拿出支付宝,却扫了微信支付码。
2020-10-10
HashMap put的过程 HashMap put的过程
首先会使用 hash 函数来计算 key,然后执行真正的插入方法 final V putVal(int hash, K key, V value, boolean onlyIfAbsent, boole
2020-08-21
为什么阿里规定需要在事务注解@Transactional中指定rollbackFor? 为什么阿里规定需要在事务注解@Transactional中指定rollbackFor?
阿里巴巴Java规范:方法【edit】需要在Transactional注解指定rollbackFor或者在方法中显示的rollback。 异常的分类 Throwable:有两个重要的子类:Exception(异常)和Error(错误),
2020-07-30
JVM&GC-通用术语 JVM&GC-通用术语
G1(Garbage First)G1是一个并行回收器,他把内存分割为很多不相关的区间(Region),每个区间可以属于老年代或者年轻代,并且每个年代区间可以是物理上不连续的。垃圾回收时都是需要停下应用程序,不然没有办法防止应用程序的干扰,
2020-07-19
JVM&GC-System.gc()方法 JVM&GC-System.gc()方法
前言在默认情况下,System.gc()会显示直接触发Full GC,同时对老年代和新生代进行回收。而一般情况下,垃圾回收应该是自动进行的,无需手工触发,否则就太麻烦了。 示例public class TestGC { public
2020-07-19
JVM&GC-对象提升规则 JVM&GC-对象提升规则
前言虚拟机给每个对象定义了一个对象年龄(Age)计数器。如果对象在Eden区出生并经过第一次Minor GC后仍然存活,并且能被Survivor容纳的话,将被移动到Survivor空间中,并将对象年龄设为1.对象在Survivor中每熬过一
2020-07-18
垃圾回收算法(7)-分代回收算法 垃圾回收算法(7)-分代回收算法
前言Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在 Java 中,堆被划分成两个不同的区域:年轻代 ( Young )、老年代 ( Tenured)。年轻代 ( Young ) 又被划分为三个区域:
2020-07-12
垃圾回收算法(5)-标记整理算法 垃圾回收算法(5)-标记整理算法
前言标记清除算法的确可以应用在老年代中,但是该算法不仅执行效率低下,而且在执行完内存回收后会产生内存碎片。所以JVM的设计者在此基础上做了改进,标记压缩法(也称标记整理法)由此诞生。 算法原理当成功标记出内存中的垃圾对象之后,标记压缩法会将
2020-07-09
垃圾回收算法(4)-复制算法 垃圾回收算法(4)-复制算法
算法原理复制算法首先将或者的内存空间分为2块,每次只使用其中一块,在垃圾会搜时将正在使用的内存中的存活对象复制到未被使用的内存块中,之后清楚正在使用的内存块中的所有对象,交换2个内存的角色,最后完成垃圾回收。 年轻代中的GCHotSpot
2020-07-09
垃圾回收算法(6)-增量算法 垃圾回收算法(6)-增量算法
前言在垃圾回收过程中,应用软件处于一种Stop the World的状态。在Stop the World的状态下,应用程序的所有线程都会挂起,暂停一切工作,等待垃圾回收的完成。如果垃圾回收时间过长,应用程序会被挂起很久,将严重影响用户体验或
2020-07-09
垃圾回收算法(3)-标记清除算法 垃圾回收算法(3)-标记清除算法
前言标记清除算法(Mark-Sweep)是一种非常基础和常见的垃圾收集算法,该算法被J.McCarthy等人在1960年提出并成功的发明并应用于Lisp语言。 涉及概念先来了解一下mutator和collector。这2个名词经常在垃圾收集
2020-07-08
1 / 5