06 2022 档案
摘要:静态代理 由程序创建或者特定工具生成的源代码,在程序运行前,代理类的.class文件已经生成 通过将目标类与代理类实现同一个接口,让代理类持有真实类对 象,然后在代理类方法中调用真实类方法,在调用真实类方法的前 后添加我们所需要的功能扩展代码来达到增强的目的,一句话,自己手写代理类就是静态代理。 p
阅读全文
摘要:1.创建表 -- Create table create table TEST ( ID NUMBER(10) not null, NAME VARCHAR2(50), SCORE NUMBER(10) ); -- Create/Recreate primary, unique and foreig
阅读全文
摘要:理解Lamda表达式 确认Lamda表达式的类型 能用 Lamda 表达式来表示的类型,必须是一个函数式接口,而函数式接口,就是只有一个抽象方法的接口。 我们看下非常熟悉的 Runnable 接口在 JDK 中的样子就明白了。 @FunctionalInterface public interfac
阅读全文
摘要:场景类比 wait/notify的原理 Owner线程发现条件不满足,调用wait方法,即可进入WaitSet变为WAITING BLOCKED和WAITING的线程都处于阻塞状态,不占用CPU时间片 BLOCKED线程会在Owner线程释放锁时唤醒 WATING线程会在Owner线程调用notif
阅读全文
摘要:一、自定义注解 @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface CopyAsync { } 二、编写AOP切面类 @Aspect @Component public class Cop
阅读全文
摘要:前言 从Java 5开始,Java提供了Callable接口,该接口是Runnable接口的增强版,Callable接口提供了一个call()方法,可以看作是线程的执行体,但call()方法比run()方法更强大, call()方法可以有返回值,call()方法可以声明抛出异常。 使用代码 publ
阅读全文