#Java

在实际开发中,我们可能会需要使用到注解来给我们的方法注入一些参数值,比如从token中获取某些参数然后注入到controller中的方法中。但是由于SpringAOP无法支持对参数上的注解进行拦截所...

在Java中为我们提供了观察者模式的相关接口和抽象Observable和Observer分别对应了观察者模式的观察者和消费者。但是这两个类在Java9的时候打上了@Deprecated表明这两个接口已...

Graalvm通过静态分析提前编译来为Java应用程序构建高度优化的本机可执行文件,这就需要在编译时就知道所有的程序类型,而java中的反射、动态代理等功能,在编译时不确定具体的类型,所以在使用Gr...

AbstractQueuedSynchronizer 注意:本文根据JDK8进行分析,后续版本的实现有一定变化。 队列同步器使用了CLH锁(基于单向链表的自旋锁,申请加锁的线程通过前驱节点的变量进行...

图解 解决方式 Spring使用了三级缓存 + 提前暴露对象的方式来解决循环依赖的问题。 相关的重要属性:位于DefaultSingletonBeanRegistry类中 Spring内部维护...

安装 下载地址 # 下载 wget https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-21.0.0/graalvm-c...

待解决问题 没有解决无效数据清理的问题,会出现OOM(有时间更新) 解决方案: 将缓存设置成LRU(可以直接把ConcurrentSkipListMap改为Spring提供的Concurrent...

HashMap 基本 HashMap基本特性: HashMap的Key和Value均允许为null HashMap的存取是没有顺序的 JDK8的底层是数组 + 链表 + 红黑树,JDK7...

在开发中如果是使用SpringCache来控制缓存的话,经常会遇到需要清除缓存的情况。我们希望其清除缓存时能支持模糊匹配,但是Spring自带的CacheManage是不支持模糊匹配的。 使用...

在互联网项目中常见的攻击方式有SQL注入,XSS攻击,以及CSRF。 XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的...