草庐IT

$FallbackHome机制

全部标签

SpringBoot的多种事件监听机制

前置配置#META-INF/spring.factories文件配置#ApplicationContextInitializerorg.springframework.context.ApplicationContextInitializer=com.test.springbootdemo.eventListeners.MyApplicationContextInitializer#ApplicationListenerorg.springframework.context.ApplicationListener=com.test.springbootdemo.eventListeners.M

重新认识下JVM级别的本地缓存框架Guava Cache(3)——探寻实现细节与核心机制

大家好,又见面了。本文是笔者作为掘金技术社区签约作者的身份输出的缓存专栏系列内容,将会通过系列专题,讲清楚缓存的方方面面。如果感兴趣,欢迎关注以获取后续更新。通过《重新认识下JVM级别的本地缓存框架GuavaCache——优秀从何而来》一文,我们知道了GuavaCache作为JVM级别的本地缓存组件的诸多暖心特性,也一步步地学习了在项目中集成并使用GuavaCache进行缓存相关操作。GuavaCache作为一款优秀的本地缓存组件,其内部很多实现机制与设计策略,同样值得开发人员深入的掌握与借鉴。作为系列专栏,本篇文章我们将进一步探讨下GuavaCache实现层面的一些逻辑与设计策略,让我们可以

重新认识下JVM级别的本地缓存框架Guava Cache(3)——探寻实现细节与核心机制

大家好,又见面了。本文是笔者作为掘金技术社区签约作者的身份输出的缓存专栏系列内容,将会通过系列专题,讲清楚缓存的方方面面。如果感兴趣,欢迎关注以获取后续更新。通过《重新认识下JVM级别的本地缓存框架GuavaCache——优秀从何而来》一文,我们知道了GuavaCache作为JVM级别的本地缓存组件的诸多暖心特性,也一步步地学习了在项目中集成并使用GuavaCache进行缓存相关操作。GuavaCache作为一款优秀的本地缓存组件,其内部很多实现机制与设计策略,同样值得开发人员深入的掌握与借鉴。作为系列专栏,本篇文章我们将进一步探讨下GuavaCache实现层面的一些逻辑与设计策略,让我们可以

Mybatis缓存机制

什么是缓存?为什么使用缓存?什么场景下使用缓存?缓存(Cache)就是数据交换的缓冲区,一个临时存储数据的地方,当我们读取数据时会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话再从内存中找。在实际开发中,我们会经常对数据库进行数据查询,而从数据库读取数据的效率是非常低下的,并且频繁地去访问数据库会增大数据库压力降低数据库查询性能等,所以我们可以将经常查询且不经常改变的数据保存到缓存中(缓存就是内存中的一个对象),这样用户在查询的时候就不用到数据库中查询(磁盘),从而减少与数据库的交付次数,从而提高查询效率,解决了高并发系统的性能问题。缓存的本质就是用空间换时间,牺牲数据的实时性,

Mybatis缓存机制

什么是缓存?为什么使用缓存?什么场景下使用缓存?缓存(Cache)就是数据交换的缓冲区,一个临时存储数据的地方,当我们读取数据时会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话再从内存中找。在实际开发中,我们会经常对数据库进行数据查询,而从数据库读取数据的效率是非常低下的,并且频繁地去访问数据库会增大数据库压力降低数据库查询性能等,所以我们可以将经常查询且不经常改变的数据保存到缓存中(缓存就是内存中的一个对象),这样用户在查询的时候就不用到数据库中查询(磁盘),从而减少与数据库的交付次数,从而提高查询效率,解决了高并发系统的性能问题。缓存的本质就是用空间换时间,牺牲数据的实时性,

面试官:你知道 Java 中的回调机制吗?我竟然答不来。。

来源:https://www.cnblogs.com/prayjourney/p/9667835.html在一个应用系统中,无论使用何种语言开发,必然存在模块之间的调用,调用的方式分为几种。1.同步调用同步调用是最基本并且最简单的一种调用方式,类A的方法a()调用类B的方法b(),一直等待b()方法执行完毕,a()方法继续往下走.这种调用方式适用于方法b()执行时间不长的情况,因为b()方法执行时间一长或者直接阻塞的话,a()方法的余下代码是无法执行下去的,这样会造成整个流程的阻塞.2.异步调用异步调用是为了解决同步调用可能出现阻塞,导致整个流程卡住而产生的一种调用方式.类A的方法方法a()通

面试官:你知道 Java 中的回调机制吗?我竟然答不来。。

来源:https://www.cnblogs.com/prayjourney/p/9667835.html在一个应用系统中,无论使用何种语言开发,必然存在模块之间的调用,调用的方式分为几种。1.同步调用同步调用是最基本并且最简单的一种调用方式,类A的方法a()调用类B的方法b(),一直等待b()方法执行完毕,a()方法继续往下走.这种调用方式适用于方法b()执行时间不长的情况,因为b()方法执行时间一长或者直接阻塞的话,a()方法的余下代码是无法执行下去的,这样会造成整个流程的阻塞.2.异步调用异步调用是为了解决同步调用可能出现阻塞,导致整个流程卡住而产生的一种调用方式.类A的方法方法a()通

day02-事件处理机制

5.Java事件处理机制5.1小球移动案例通过监听键盘按键,实现小球的移动例子:packageli.gui.even_;importjavax.swing.*;importjava.awt.*;importjava.awt.event.KeyEvent;importjava.awt.event.KeyListener;/***@author李*演示小球通过键盘控制上下左右的移动-->讲解Java事件的控制*/publicclassBallMoveextendsJFrame{MyPanelmp=null;publicstaticvoidmain(String[]args){BallMovebal

day02-事件处理机制

5.Java事件处理机制5.1小球移动案例通过监听键盘按键,实现小球的移动例子:packageli.gui.even_;importjavax.swing.*;importjava.awt.*;importjava.awt.event.KeyEvent;importjava.awt.event.KeyListener;/***@author李*演示小球通过键盘控制上下左右的移动-->讲解Java事件的控制*/publicclassBallMoveextendsJFrame{MyPanelmp=null;publicstaticvoidmain(String[]args){BallMovebal

day12-实现Spring底层机制-02

实现Spring底层机制-023.实现任务阶段13.1知识拓展-类加载器Java的类加载器有三种:Bootstrap类加载器-----对应路径jre/libExt类加载器-----对应路径jre/lib/extApp类加载器-----对应路径classpathclasspath类路径,就是java.exe执行时,指定的路径。3.2分析阶段1目标:编写自己的spring容器,实现扫描包,得到bean的class对象3.3代码实现1.创建新的maven项目,注意把项目的languagelevel改为支持java8在pom.xml文件中指定编译版本:882.创建的架构如下:3.自定义Componen