前言 前文分析了 Server 类的 init 和 start 方法,其中最核心的内容就是调用了 StandardServer 类的的 Service 类型的成员的 init 和 start 方法。Service 是 Tomcat 的核心组件之一。Service 的实现类是 StandardService。StandardService 和…
前言 前文分析了Service的 init 和 start 方法,在这两个方法中关键的是调用 Engine 和 Connector 的 init 和 start 方法,一个 Service 里只有一个 Engine,有多个 Connector。本篇文章分析 Engine 的启动,Engine 的实现类是 StandardEngine。 1…
前言 之前分析了Tomcat的 Catalina 类,这个类的主要作用就是根据 server.xml 的配置来初始化 Tomcat 运行所需要的组件,比如 Server,Service 等等,然后调用成员变脸 Server 类对象的的 init 和 start 方法,来启动 tomcat。 一个 Server 类的实例就代表了一个 Tomcat…
前言 之前的文章说道Tomcat的Bootstrap类,在 start 的时候,分别调用了 Bootstrap 类的 daemon.setAwait(true); daemon.load(args); daemon.start(); 这三个方法,这三个方法都类似,都是通过反射调用 Catalina 类的同名方法,setAwait 方法比较简单,就是把…
前言 SpringMVC是目前主流的Web MVC框架之一。 重要接口和类介绍 1. View接口 视图基础接口,它的各种实现类是无状态的,因此是线程安全的。 该接口定义了两个方法: 2. AbstractView抽象类 View接口的基础实现类。我们稍微介绍一下这个抽象类。 首先看下这个类的属性: 再看下抽象类中接口方法的实现:…
基础 index -> type -> mapping -> document -> field 对标数据库 ES DB index schma type 无法对比,ES7.x版本开始移除 mapping DDL定义,也可理解为数据库中一张table document table中一条数据 field field shard分片 一个index有多个…
实例讲解 我们分析了转换器的转换过程之后,下面就通过实例来验证我们的结论吧。 首先,我们先把xml转换器实现。 之前已经分析,默认的转换器中是支持xml的。下面我们加上注解试试吧。 由于Map是jdk源码中的部分,因此我们用Employee来做demo。 因此,Controller加上一个方法:…
Memoization 是一种优化技术,用于通过存储昂贵的函数调用的结果并在再次出现相同的输入时重用缓存的结果来加速应用程序。在反应式编程的上下文中,记忆化通过缓存结果来帮助避免重复执行昂贵的操作。让我们深入研究一下如何将 Spring Reactor Mono 用作缓存。 Reactor 中的 Mono.cache() 允许您缓存 Mono…
前言 SpringMVC是目前主流的Web MVC框架之一。 我们使用浏览器通过地址 http://ip:port/contextPath/path 进行访问,SpringMVC是如何得知用户到底是访问哪个Controller中的方法,这期间到底发生了什么。…
接下来我们来看下各种RequestCondition接口的实现类的combine操作。 PatternsRequestCondition: RequestMethodsRequestCondition: 方法的请求条件,用个set直接add即可。 其他相关的RequestConditon实现类读者可自行查看源码。…