java

17 4 月, 2023

spring nacos配置中心集成原理

在spring cloud alibaba中,配置中心是关键性的组件,能够提供便捷的配置管理以及更改配置后无需启动服务,就能够实现配置的自动更新。当然自动更新的操作并不是由nacos来完成,但是涉及以及配置更新通知,则是由nacos来实现的。这篇文章主要介绍nacos配置加载实现。

进一步了解
11 4 月, 2023

spring boot 环境配置加载原理

spring boot的出现,大大减少了配置文件的数量,我们可以通过代码的方式完成spring的所有配置,在spring boot启动过程中,重要的就是环境变量数据的加载,这些环境变量会成为后面容器启动的关键配置信息,因此主要看下环境配置加载的原理。

进一步了解
7 3 月, 2023

java通过反射解析泛型类型

在工作中,我们时常需要使用泛型,最主要目的其实还是在于对公共逻辑的提取,以最大限度减少重复代码带来的复杂性和难以维护性。在一文读懂java泛型机制中对泛型做了基本概念的介绍,以及基础的使用。今天这篇文章主要是通过反射的方式获取泛型信息。

进一步了解
27 2 月, 2023

一文读懂java泛型机制

Java泛型这个特性是从JDK 1.5才开始加入的,因此为了兼容之前的版本,Java泛型的实现采取了“伪泛型”的策略,即Java在语法上支持泛型,但是在编译阶段会进行所谓的“类型擦除”(Type Erasure),将所有的泛型表示(尖括号中的内容)都替换为具体的类型(其对应的原生态类型),就像完全没有泛型一样。

进一步了解
14 1 月, 2023

flowable运行时动态新增会签节点

在最近的项目开发中,涉及到了审批人在审批时,需要动态的指定审批人。在目前最通用的方案就是在涉及流程的时候,审批人通过变量的方式指定,然后审批人在审批的时候,动态传入审批人即可。但是这种方式比较大的问题,没办法覆盖所有的场景,当场景比较灵活的时候,对流程的设计有比较高的要求。因此就开始调研能否通过代码的方式动态创建任务节点。

进一步了解
9 12 月, 2022

flowable获取未审批节点列表

在最近的项目开发中,有一个需求为获取未审批节点的信息。在我们系统中,流程图没有特别的节点,主要包含了并行网关、排他网关、任务节点这几种类型的节点。因此在获取未审批节点的时候,就没有其他的业务处理逻辑。该问题作为记录,以便日后使用。

进一步了解
16 10 月, 2022

Mybatis 拦截器工作原理

在 mybatis mapper运行原理 和mybatis Configuration初始化源码分析中,我们学习了在mybatis初始化的过程中以及创建mapper的时候做了些必要的事情,其中作为扩展点主要在于Interceptor拦截器的实现,通过拦截器我们可以对mybatis查件操作扩扩展处理,比如可以通过拦截器实现分页查询信息, 以及其他数据权限相关的配置。今天这篇文章主要介绍拦截器的一些用法,以及拦截器的使用。

进一步了解
6 10 月, 2022

mybatis mapper运行原理

在前面的章节中,我们学习了mapper接口代理对象是如何生成的,知道了mapper使用了jdk的动态代理技术生成,这篇文章将探讨mapper是如何运行的,在运行过程中都做了哪些事情。

进一步了解
5 10 月, 2022

Mybatis Mapper生成原理

在前面的章节中我们探讨了configuration类型的加载过程,过程执行还是很清晰的,今天这篇文章我们主要从源码的角度探讨mapper的工作原理,更深入一次的了解mybatis框架,也为后面我们深入了解在mybatis上扩展的框架打下基础。

进一步了解