掘友等级
获得徽章 13
#1024一起掘金# 在上海,有没有靠谱的相亲平台或相亲方式啊?
你很好,我不配,掌声
有请下一位
#每天一个知识点# Synchronized关键字
在 Java 中,如果要实现同步, Java提供了一个关键词 synchronized 来让开发人员可以快速实现同步代码块(线程安全)。
synchronized关键字作用在实例方法和静态方法上时, JVM 是通过ACC_SYNCHRONIZED 这个标志来实现同步的。而作用在代码块时,而且通过指令 monitorenter 和 monitorexit 来实现同步的。monitorenter 是获取锁的指令, monitorexit 则是释放锁的指令。
#每天一个知识点# Xml 映射文件中,除了常见的select|insert|update|delete 标签之外,还有很多其他的标签,如:<resultMap>、<parameterMap>、<s9l>、sinclude>、<selectKey>, 加上动态 sql的9个标签,trim|where|set|foreach|if|choose|when|otherwis e|bind 等, 其中 <sql>为 sql片段标签, 通过<include>标签引入 sql片段,<selectKey>为不支持自增的主键生成策略标签。
#每天一个知识点# Java 内部类为什么强制要求使用final修饰变量?
#每天一个知识点# private修饰的方法可以通过反射访问
那么private的意义是什么?
#每天一个知识点# UNION ALL与UNION的区别?
返回结果
union all是直接连接,取到得是所有值,记录可能有重复;
union 是取唯一值,记录没有重复。
排序
union将会按照字段的顺序进行全量排序;
union all只是简单的将两个结果合并后就返回。
效率
从效率上说, union all 要比union快很多,所以,如果可以确认合并的两个结果集中不包含重复数据且不需要排序时的话,那么就使用union all。
#每天一个知识点# AQS的主要特点和功能?
1.状态管理: AQS内部维护一个同步状态(state), 通过CAS(比较并交换)操作来实现对状态的修改和判断。不同的同步器可以根据自己的需求使用同步状态来表示不同的含义。
2.队列管理: AQS使用一个FIFO队列来管理等待获取同步状态的线程。通过内置的方法可以实现线程的入队、出队、阻塞和唤醒等操作。
3.独占模式和共享模式: AQS支持两种同步模式,即独占模式和共享模式。独占模式只允许一个线程获取同步状态,如ReentrantLock;共享模式允许多个线程同时获取同步状态, 如CountDownLatch。
4.条件等待与唤醒: AQS提供了条件等待与唤醒的功能,通过Condition对象可以实现线程的等待和唤醒机制。
下一页